Red de conocimiento informático - Conocimiento de la instalación - Pregunte a los expertos sobre la implementación de colas y pilas de estructuras de datos

Pregunte a los expertos sobre la implementación de colas y pilas de estructuras de datos

/*La siguiente es una cola secuencial simple. La cola circular se puede modificar sobre esta base y es necesario agregar la estructura de la cadena*/

#includelt; ;

#define

TAMAÑO

50/*Longitud máxima de cola*/

#define

ELEMTYPE

float/*El tipo de elementos en la cola, que puede ser arbitrario*/

#define

N

55/ *deseado Si el número de elementos insertados en la cola es mayor que TAMAÑO, la parte mayor que TAMAÑO no se puede insertar*/

ELEMTYPE

queue[SIZE] /*cola secuencial; */

int

cabeza, parte trasera, recuento;

void

init(){

cabeza =0;/ *Cabeza de la cola*/

rear=0; /*Cola de la cola*/

count=0; /

}

void

add(ELEMTYPE

e){/*Enqueue*/

if (countlt;TAMAÑO){

cola[trasera]=e;

trasera;

cuenta;

}

else{

printf("La longitud de la cola es d\nNo se puede insertar, la cola está llena\n", TAMAÑO);

}

}

ELEMTYPE

del(){/*Dequeue*/

ELEMTYPE

temp;

if(count!=0){

ELEMTYPE

temp; p>

count--;

temp=queue[head];

cabeza;

retorno

temp;

}

else{

printf( "La cola está vacía\n");

return

0 ;

}

}

ELEMTYPE

getHead(){/*Obtiene el elemento principal de la cola, solo su valor, no Dequeue*/

if(count!=0)

return

cola[head];

else{

printf("La cola está vacía\n");

return

0;

}

}

int

empty(){/*Empty No, verdadero si la cola es vacío*/

return

count==0 ;

}

void

main(){

int

i;

init();

for(i=0;ilt;N;i){

add((ELEMTYPE)i);

}

printf("El elemento principal de la cola es: f\n", getHead()); que el formato de salida coincida con ELEMTYPE*/

while(!empty()){

printf("f\n", del() /*Tenga en cuenta que al generar, mantenga el formato de salida correspondiente al tipo de datos de la cola*/

}

}