2-01 tabla de secuencia básica y tabla de secuencia externa de elementos recv

Tabla de secuencia

En un programa, a menudo es necesario administrar y usar un grupo (generalmente del mismo tipo) de elementos de datos como un todo. Debe crear dicho grupo de elementos, registrarlos con variables, pasar y sacar funciones, etc. El número de elementos contenidos puede cambiar (puede agregar o eliminar elementos).

Para este tipo de demanda, la solución más simple es tratar dicho grupo de elementos como una secuencia, y usar la posición y el orden de los elementos en la secuencia para representar alguna información significativa en la aplicación real, o para representar datos. Algún tipo de relación.

La organización de un conjunto de elementos de secuencia de este tipo puede resumirse como una tabla lineal . Una tabla lineal es una colección de elementos de cierto tipo, y también registra una relación de secuencia entre los elementos. La tabla lineal es una de las estructuras de datos más básicas. Se usa ampliamente en programas reales y a menudo se usa como un elemento más complejo. La base de la realización de la estructura de datos.

De acuerdo con el método de almacenamiento real de la tabla lineal, se divide en dos modelos de implementación:

  • Una tabla de secuencia almacena elementos secuencialmente en un espacio de almacenamiento continuo, y la relación de orden entre elementos se expresa naturalmente por su orden de almacenamiento.
  • Una lista vinculada almacena elementos en una serie de bloques de almacenamiento construidos por enlaces.

 

Forma básica de tabla de secuencia

La figura a muestra la forma básica de la tabla de secuencia. Los elementos de datos se almacenan continuamente. La unidad de almacenamiento ocupada por cada elemento es del mismo tamaño. El subíndice del elemento es su dirección lógica y la dirección física (dirección de memoria real) almacenada por el elemento Calculado por el producto de la dirección inicial del área de almacenamiento Loc (e0) más la dirección lógica (el elemento i-ésimo) y el tamaño de la unidad de almacenamiento (c), a saber:

Loc (ei) = Loc (e0) + c * i

Por lo tanto, no hay necesidad de atravesar el elemento especificado al acceder al elemento especificado, y la dirección correspondiente se puede obtener a través del cálculo, y la complejidad de tiempo es O (1)

Si el tamaño de los elementos no es uniforme, la forma externa del elemento en la Figura b debe usarse para almacenar los elementos de datos reales por separado, y la información de ubicación de cada elemento en la tabla de secuencia contiene la información de la dirección (es decir, el enlace) del elemento correspondiente. Dado que cada enlace requiere la misma cantidad de almacenamiento, la fórmula anterior se puede usar para calcular la ubicación de almacenamiento del enlace del elemento y luego seguir el enlace para encontrar el elemento de datos almacenado real. Tenga en cuenta que c en la Figura b ya no es el tamaño del elemento de datos, sino la cantidad de almacenamiento requerida para almacenar una dirección de enlace, que generalmente es pequeña.

Fuente: https://www.cnblogs.com/echo-kid-coding/p/11148502.html

Publicado 44 artículos originales · 130 alabanzas · 1,37 millones de visitas

Supongo que te gusta

Origin blog.csdn.net/gb4215287/article/details/104582211
Recomendado
Clasificación