Colección (tipo de datos abstractos)

En programación informática , una colección es un tipo de datos abstracto que es una agrupación de elementos que pueden usarse de manera polimórfica .

A menudo, los elementos son del mismo tipo de datos, como int o string . A veces, los elementos derivan de un tipo común; incluso derivan del tipo más general de un lenguaje de programación , como object o variant .

Aunque se confunde fácilmente con las implementaciones en lenguajes de programación, la colección, como concepto abstracto, se refiere a conceptos matemáticos que pueden malinterpretarse cuando el enfoque está puesto en una implementación. Por ejemplo, una cola de prioridad se implementa a menudo como un montón, mientras que una matriz asociativa se implementa a menudo como una tabla hash, por lo que esta implementación preferida suele denominar a estos tipos abstractos como un "montón" o un "hash", aunque esto es conceptualmente incorrecto.

Subtipos

Otros tipos de datos abstractos son más específicos que la colección.

Lineal

Algunas colecciones mantienen un orden lineal de elementos, con acceso a uno o ambos extremos. La estructura de datos que implementa una colección de este tipo no necesita ser lineal. Por ejemplo, una cola de prioridad suele implementarse como un montón , que es una especie de árbol.

Las colecciones lineales notables incluyen:

De asociación

Algunas colecciones se interpretan como una especie de función: dada una entrada, la colección produce una salida.

Entre las colecciones asociativas más notables se incluyen:

Un conjunto puede interpretarse como un multiconjunto especializado, que a su vez es una matriz asociativa especializada, en cada caso limitando los valores posibles, considerando un conjunto como representado por su función indicadora .

Implementación

Como tipo de datos abstracto, la colección no prescribe una implementación, aunque la teoría de tipos describe consideraciones de implementación .

Algunos tipos de colección se proporcionan como tipos de datos primitivos en un lenguaje, como listas, mientras que los tipos de colección más complejos se implementan como tipos de datos compuestos en bibliotecas, a veces en la biblioteca estándar de un lenguaje . Algunos ejemplos incluyen:

Referencias

  1. ^ Feuerstein, Steven ; Pribyl, Bill; Dawes, Chip (1999). "Colecciones en PL/SQL". Referencia de bolsillo del lenguaje PL/SQL de Oracle (4.ª edición). Sebastopol, California: O'Reilly Media, Inc. (publicado en 2007). pág. 63. ISBN 9780596551612. Recuperado el 26 de junio de 2017. Las colecciones se implementan como TIPOS. Como con cualquier tipo definido por el programador, primero debe definir el tipo; luego, puede declarar instancias de ese tipo.
  • Colecciones de Apache Commons.
  • Implementación ActionScript3 de las colecciones más comunes.
  • CollectionSpy: un generador de perfiles para el marco de colecciones de Java.
  • Guayaba.
  • Biblioteca Java de Mango.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Collection_(abstract_data_type)&oldid=1251373095"