Colección (programación)

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 28 de agosto de 2018; las comprobaciones requieren 9 ediciones .

Una colección en programación es un objeto de programa que contiene, de una forma u otra, un conjunto de valores de uno o diferentes tipos, y permite acceder a estos valores.

Una colección permite escribir y recuperar valores. El propósito de una colección es servir como depósito de objetos y proporcionar acceso a ellos. Normalmente, las colecciones se utilizan para almacenar grupos de objetos del mismo tipo que están sujetos a estereotipos. Se pueden utilizar diferentes métodos para acceder a un elemento particular de una colección, dependiendo de su organización lógica. Una implementación PUEDE permitir que se realicen operaciones individuales en colecciones como un todo. La presencia de operaciones en colecciones en muchos casos puede simplificar enormemente la programación.

Colecciones y contenedores

Una colección o contenedor agrupa un número variable (posiblemente cero) de elementos de datos que tienen algún valor común para resolver un problema. Se operan de alguna manera. Por lo general, los elementos de datos son del mismo tipo o (en lenguajes que admiten herencia ) los tipos se derivarán de algún tipo de ancestro común. Una colección es un concepto aplicado a tipos de datos abstractos y no prescribe una implementación específica a través de una estructura de datos en particular, aunque a menudo hay una opción bien establecida. Los contenedores en la teoría de tipos  son abstracciones que permiten que las colecciones de diferentes estructuras, como listas y árboles , se representen de alguna manera uniforme. Un contenedor ( unario ) está definido por índices S y una familia de tipos en posiciones P indexados por S: se da una función de tipos de índice a tipo de elemento. Los contenedores se pueden considerar como clases canónicas para colecciones de varios tipos. Las listas se indexan mediante números naturales (incluido el cero ). Las listas tienen un índice máximo. Para los árboles, la estructura del árbol se puede expresar en términos de índices sin información específica sobre el contenido de los nodos. Los índices de los elementos de estructura en la memoria son isomorfos a las rutas desde la raíz del árbol hasta sus nodos .

Clasificación

Según características generales

Según la lógica de la organización

Dependiendo de cómo se organice lógicamente el acceso a los datos de la colección, se distinguen los siguientes tipos principales:

Por implementación

En el nivel de implementación, una colección puede ser una de las siguientes estructuras de datos:

Operaciones sobre colecciones

Dependiendo del tipo booleano de la colección y de la implementación, se pueden admitir diferentes operaciones en las colecciones en general. En todos los casos, las operaciones solo se pueden realizar sobre pares de colecciones del mismo tipo (y, si las colecciones no son heterogéneas, con el mismo tipo de elementos). También se pueden admitir las siguientes operaciones:

Implementaciones notables

Véase también

Notas

Enlaces