Son estructuras de datos que, una vez definidas, no pueden ser cambiadas por otras de otra naturaleza, o de diferente tamaño. Este tipo de estructuras no se pueden utilizar para problemas donde se requiera un tamaño de almacenamiento variable al momento de la ejecución.

Una Secuencia es una lista contigua (físicamente inclusive) de datos del mismo tipo que son accesibles por un índice, es la representación dentro del componente de un vector en lenguaje JAVA. Esta estructura se encuentra clasificada como estática lineal, debido a que el tamaño definido al crear la Estructura no se modifica y representa un espacio de almacenamiento de datos denominados elementos que se encuentran almacenados de forma sucesiva dentro de la estructura.

Características
La característica principal de Secuencia es que almacena sus dos de manera consecutiva, por lo que entre la primera posición de la Secuencia (posición cero) y la última posición (última posición donde exista un dato) no se encuentran posiciones nulas, lo que si puede ocurrir en un vector tradicional donde no necesariamente los datos son almacenados secuencialmente. Esta característica permite examinar los datos almacenados dentro de la Secuencia sin tener que recorrer toda la capacidad de la estructura.
La Secuencia tiene la característica de que puede almacenar a N elementos del mismo tipo, permite seleccionar a cada uno de ellos. Así se distinguen dos partes:

  • Elementos (valores que se almacenan en c/u de las casillas)
  • Los índices (Permiten hacer referencia a los elementos)
  • En la ejecución del programa, se reservan tantas posiciones como el tamaño definido de la Secuencia, siendo cada posición del tamaño requerido por el tipo de dato de la estructura.
  • El primer elemento de una Secuencia tiene obligatoriamente índice 0.
  • Si una Secuencia tiene como máximo n elementos, el último elemento se referenciará con el índice n-1.

En cuanto a las dimensiones de la Secuencia pueden ser:

  • Unidimensional o vector: un solo índice
  • Bidimensional o matriz: dos índices
  • Multidimensional: más de dos índices

SEED trabaja la dimensión unidimensional debido a que es la estructura simple que posee más relevancia y del funcionamiento de estas el estudiante puede implementar de creer necesario las demás dimensiones.

Secuencia unidimensional
Es un conjunto de elementos del mismo tipo.

Declaración:

Tipo :Hace referencia al tipo de los datos contenidos en el vector.
Tamaño: Hace referencia al número de elementos máximos que puede contener la Secuencia. OJO: Este tamaño se define al crear la estructura y no puede modificarse a lo largo de la operabilidad de la misma.

OperacionesLas operaciones básicas de esta estructura son:

Insertar:
Para esta operación solo basta con indicar el dato que se desea almacenar en la estructura y esta lo almacena consecutivamente en la posición acorde a la cantidad datos que posee la estructura, teniendo en cuenta que no se desborde la capacidad de la Secuencia.

Ejemplo de insertar:
Tenemos la Secuencia:

Se desea insertar el número 25 a la secuencia.

Simplemente se agrega el índice (número en la posición elementos almacenados menos uno)

Eliminar:
Se debe indicar el dato que se desea eliminar de la estructura, esta lo borra y consecutivamente de ser necesario reajusta las posiciones de los datos siguientes al dato eliminado, teniendo en cuenta que el dato se encuentre almacenado en la Secuencia.

Ejemplo de Eliminar:
Tenemos la Secuencia y se desea eliminar el número 02 de la Secuencia:

Al eliminarse el número 02 de la Secuencia automáticamente al poseer elementos posteriores al eliminado hace un corrimiento hacia la izquierda evitando dejar posiciones vacías entre los elementos que almacena la estructura.

Manteniendo las propiedades de la Secuencia, la estructura queda de la siguiente manera:

Consultar dato:
Se indica el dato que se desea consultar de la estructura, esta recorre la cantidad de datos almacenados hasta encontrar el dato que se está consultando, teniendo en cuenta que el dato se encuentre almacenado en la Secuencia.

Editar:
En esta operación solo basta con indicar el dato que se desea almacenar en la estructura e indicar la posición que se desea editar de la estructura, esta recorre la cantidad de datos almacenados hasta encontrar la posición de la estructura que se desea modificar y cambia el valor de la posición por el nuevo dato, teniendo en cuenta que la posición exista y posea un dato almacenado en Secuencia.

Implementación de Secuencia en SEED

Descripción:
Una secuencia es una estructura estática que se definió en la clase Secuencia, en la que principalmente se debe definir un tamaño en especifico, ya que es el espacio reservado para el almacenamiento de los objetos, el funcionamiento de la secuencia consiste en almacenar sus datos de manera consecutiva en sus posiciones que comienzan desde (0) hasta (el tamaño definido – 1), de manera que en esta estructura los datos no se encuentran ordenados y entre la primera posición de la Secuencia (posición cero) y la última posición (última posición donde exista un dato) no se encuentran posiciones nulas, lo que si puede ocurrir en un vector tradicional donde no necesariamente los datos son almacenados secuencialmente. Se debe tener en cuenta que la capacidad para almacenar en la Secuencia es igual al tamaño que se le definió en el momento de su creación y que esta no es la misma cantidad de objetos almacenados, al poseer la cantidad de objetos en la estructura permite examinar los datos almacenados dentro de la Secuencia sin tener que recorrer toda la capacidad de la estructura.

La implementación de la Clase Secuencia se ilustra en el siguiente diagrama de clase:

La imagen tiene un atributo ALT vacío; su nombre de archivo es Secuencia_10.jpg

Requerimientos funcionales implementados:
RF1 – Crear una nueva Secuencia.
RF2 – Insertar datos a la nueva Secuencia.
RF3 – Eliminar datos de la Secuencia (Vaciar la Secuencia).
RF4 – Editar datos de la Secuencia.
RF5 – Consultar datos de la Secuencia.
RF6 – Conocer el tamaño de la Secuencia.
RF7 – Conocer la capacidad de la Secuencia.
RF8 – Conocer los datos de la Secuencia.

Implementación de un Simulador:
El Simulador posee las operaciones indicadas por su menú de opciones: