Estructura de Datos pila 3 / cola

A. Pila

1. Concepto

Los elementos de datos duran cabo

En la parte superior de la pila sólo se puede insertar o extraer
una pila de inserciones y deleciones llamada empujar y hacer estallar


2. Estructura de almacenamiento

(1) secuencia de la pila

Pila / final de variables de pila "Indicador" puede ser una variable puntero o número entero

El extremo de cola del puntero de la pila a la pila
es inicialmente ① NULL, puntero ② -1, conformación

El elemento superior del puntero de pila a la siguiente posición, el punto inicial hasta el extremo de la pila

de depósito vacío:
①top Base = = NULL, la variable puntero
②top = base = -1, variable entera

de depósito vacío elección pseudocódigo: S.top == 0

(2) pila enlace (nodo sin cabeza - rojo):

Sólo pila puntero de
pila puntero a una, a un punto de aₙ₋₁ ...


3. La pila de aplicaciones

Principio: El estado actual de la pila con función de memoria
de aplicaciones: llamar a la función / recursivo / paréntesis coincidente / evaluación de la expresión
⇒ recursiva complejidad espacio algoritmo es generalmente 0 (log n), como una especie rápida


II. Cola

1. Concepto

FIFO elementos de datos
delanteras: cabeza del equipo (elementos quitar)
TRASERO: la cola (insertar elementos)

2. Estructura de almacenamiento

2-1 orden - cola cíclica

(1) Cabezal de equipo / equipo de punteros de cola
① son enteros variables de
② puntero cabeza cola siempre apunta a la cabeza del elemento de cola
③ puntero de cola cola siempre apunta a la siguiente posición del elemento de la cola, inicialmente apunta al primer equipo: frente = trasero = 0 (Teoría determinación vaciar)


(2) pena de vaciar:
TRASERO = frontal (requiere menos declarada con un elemento)
de lo contrario no puede ser en realidad un equipo completo en lugar de equipo de vacío

(3) frase completa (por defecto menos espacio, menos que declara con etiqueta):
cuando el espacio restante se asigna espacio de memoria en la cola: equipo completo

Análisis de equipo completo: (trasero + 1)% m = q.front

(4) el número de elementos:
(TRASERO-fromt el m +) m%
m como (el número de no elemento) longitud de la matriz

(5) de inserción, elementos de borrado (por defecto menos espacio)
① insertado (en la cola): = traseras (trasera + 1 )% m

② eliminar (en HOL): = frontales (frontal + 1)% m

2-2 cola de la cadena (el nodo principal)

Head-puntero al primer nodo,
el puntero de cola inicialmente apunta al primer nodo
determinación vacío: frente = trasera


resumen

1. Puntero

(1) pueden ser almacenados secuencialmente en la variable de conformación puntero puede usarse para identificar la posición
① pila (parte superior del elemento): una variable de puntero (libro de texto)
(elementos de cola de la cola) ② cola: Conformación, identificador de posición (común). Debido a que la cola circular sin el plástico será muy problemático

(2) las variables de puntero de cadena se almacenan

2. puntero de cola (parte superior de la / cola cola de la pila)

(1) se almacenan de forma secuencial (no vacío): una serie de elementos de arrastre apuntan a la siguiente posición
① pila
apunta el puntero de pila para el extremo inicial de la pila superior = base = NULL (libros de texto, variable de puntero)
Top = Base = -1 (el otro, variables enteras)

② el puntero de cola de la cola inicialmente apunta a la primera parte frontal equipo = trasero = 0 (teoría determinación en blanco)

(2) las cadenas de tiendas: puntos a la posición actual del elemento (no apunta a la siguiente posición)
① pila (sin nodo de cabeza): Sólo una cola puntero de pila
② cola (primer nodo): el puntero de cola inicialmente apunta al primer nodo


3. Los sitios de prueba

1: es una operación lineal restringida naturaleza de las tablas de pilas y colas


Publicado 46 artículos originales · elogios ganado 15 · Vistas a 30000 +

Supongo que te gusta

Origin blog.csdn.net/qq_41850194/article/details/102457833
Recomendado
Clasificación