Red de conocimiento informático - Material del sitio web - ¿Cómo crear una cola circular de caracteres para implementar operaciones como ingresar elementos de caracteres en la cola, salir de la cola y mostrar elementos de la cola?

¿Cómo crear una cola circular de caracteres para implementar operaciones como ingresar elementos de caracteres en la cola, salir de la cola y mostrar elementos de la cola?

Puede implementar una cola circular usando una matriz. La siguiente es una implementación simple en lenguaje C, que incluye operaciones como ingresar a la cola, salir de la cola y mostrar elementos de la cola:

``c

#include

#define MAXSIZE 50

typedef struct {

char data[MAXSIZE];

int front;

int rear;

}Cola;

void initQueue(Cola *q) {

q-gt; front = 0

q-gt; trasero = 0;

}

int está vacío(Cola *q) {

return q-gt; frente == q-gt; >}

void enqueue(Queue *q, char e) {

if ((q-gt; rear 1) MAXSIZE == q-gt; front) {

printf("La cola está llena

");

return

}

q-gt; q-gt; trasero] = e;

q-gt; trasero = (q-gt; trasero 1) MAXSIZE;

}

char dequeue( Cola *q) {

if (isEmpty(q)){

printf("La cola está vacía

");

devolver -1;

}

char e = q-gt; datos[q-gt; frente]

q-gt; -gt; front) 1) MAXSIZE;

return e;

}

void display(Cola *q) {

if (isEmpty(q) ){

printf("La cola está vacía

");

return

}

int i = q-gt; frente;

while (i != q-gt; trasero) {

printf("c ", q-gt; datos [i]);

i = (i 1) MAXSIZE

}

printf("

"); p>

}

``