Operación de combinación de tablas secuenciales

1: Definir la tabla de secuencia
2: Crear la tabla de secuencia
3: Fusionar las dos tablas
4: Disminuir el resultado combinado y la salida
#include<stdlib.h>
#include<stdio.h>
#define MAXSIZE 1000
#Definición de la tabla de secuencia
typedef struct{ int data[ MAXSIZE]; int length; }SeqList; void InitList(SeqList &l){ l.length=0; } #Creación de la tabla de secuencias void CreateList(SeqList &l,int n){ for(int i=0 ;i<n;i++ ){ printf("Elemento de entrada:"); int elem; scanf("%d",&elem); l.data[i]=elem; l.length++; }














}
#合并操作
void Combinación(SeqList &l1,SeqList &l2,SeqList &l3){ int i=0,j=0,k=0; while((i!=l1.length)&&(j!=l2.length)){ si(l1.data[i]>l2.data[j]){ l3.data[k++]=l2.data[j++ ]; }else{ l3.data[k++]=l1.data[i++]; } l3.longitud++; } mientras(i<l1.length){ l3.data[k++]=l1.data[i++]; l3.longitud++; } while(j<l2.length){ l3.data[k++]=l2.data[j++]; l3.longitud++; } } #减序输出void display(SeqList &l){ for(int i=l.length;-1;i>=0;i–){ printf("%d “,l.data[i]); } printf(”\n"); }

























int main(){ int n; printf("Número de elementos en la lista de secuencia:"); scanf("%d",&n); SeqList l1,l2,l3; //Inicialización de la tabla de secuencias InitList(l1); InitList( l2 ); InitList(l3); //Creación de lista de secuencias printf("Crear lista de secuencias 1\n"); CreateList(l1,n); printf("Crear lista de secuencias 2\n"); CreateList(l2,n) ; printf("Lista de secuencias 1 y 2 fusionadas\n"); Combinación(l1,l2,l3); //La lista de secuencias se imprime en orden descendente printf("El resultado de la fusión de la lista de secuencias se imprime\n"); display(l3 ); devolver 0; }



















Supongo que te gusta

Origin blog.csdn.net/weixin_42620513/article/details/123684991
Recomendado
Clasificación