Red de conocimiento informático - Espacio del host - Necesito los conocimientos más básicos del lenguaje C, colas y operaciones básicas.

Necesito los conocimientos más básicos del lenguaje C, colas y operaciones básicas.

Una cola es una tabla lineal especial que solo permite operaciones de eliminación en el extremo frontal de la tabla (front-end) y operaciones de inserción en el extremo posterior de la tabla (back-end). El final que realiza la operación de inserción se denomina cola de la cola y el extremo que realiza la operación de eliminación se denomina cabecera de la cola. Cuando no hay elementos en la cola, se denomina cola vacía. En una estructura de datos como una cola, el primer elemento insertado será el primero en eliminarse; a la inversa, el último elemento insertado será el último en eliminarse, por lo que la cola también se denomina "primero en entrar, primero en salir" (FIFO). de una tabla lineal: primero en entrar, primero en salir). La condición para que la cola esté vacía: front = rear La condición para que la cola esté llena: rear = MAXSIZE La cola se puede almacenar en una matriz Q[1...m], y el límite superior m de la matriz es la capacidad máxima permitida por la cola. Al operar una cola, es necesario configurar dos punteros: head, el puntero de la cabeza, apunta a la posición anterior del encabezado real del elemento de la cola; tail, el puntero de la cola, apunta a la posición real de la cola del elemento de la cola; En circunstancias normales, el valor inicial de los dos punteros se establece en 0, luego la cola está vacía y no tiene elementos. La Figura 1 (a) muestra una cola que consta de 6 elementos y la matriz se define como Q[1...10]. Q(i) i = 3, 4, 5, 6, 7, 8 puntero de cabeza cabeza = 2, puntero de cola cola = 8. El número de elementos en la cola es: encabezado = encabezado 1. En este momento, el puntero del encabezado y el puntero de la cola apuntan a la posición final real de los elementos de la cola. Véase la Figura 1(b). Si desea agregar un nuevo elemento a la cola, el puntero de cola debe subir una posición. Es decir, cuando Q (9) está en la cola, puntero de cola = cola 1, consulte la Figura 1 (c). Cuando la cola se ha procesado en la parte superior, es decir, cola = 10, si aún desea realizar la operación de ingresar a la cola, debe hacerlo en "desbordamiento", pero de hecho hay tres posiciones vacías en la cola. cola, por lo que este tipo de desbordamiento se denomina "falso" desbordamiento". Hay dos formas de superar el falso desbordamiento. Una es mover todos los elementos en la cola al área de dirección baja, lo que obviamente es una pérdida de tiempo. La otra es tratar el área de almacenamiento de la matriz como un área de anillo conectada de un extremo a otro; Cuando se almacenan n direcciones, la siguiente dirección "pasa" a 1. Las colas almacenadas mediante esta tecnología en una estructura de cola se denominan colas circulares. Las colas, al igual que las pilas, solo permiten la inserción y eliminación de elementos en los puntos de interrupción. El algoritmo de cola circular es el siguiente: 1. Cola = cola 1; 2. Si cola = n 1, entonces cola = 1. Si cabeza = cola y el puntero de la cola coincide con el puntero de la cabeza, significa que el elemento tiene; llenó la cola y se procesará un error de desbordamiento 4. De lo contrario, Q (cola) = X, final (X es el elemento recién eliminado); Las colas y pilas tienen una amplia gama de aplicaciones.

Detalles en línea:

/view/38959.htm?fr=ala0_1_1