Estruturas de Dados
Table of Contents
- SplDoublyLinkedList
- SplStack
- SplQueue
- SplHeap
- SplMaxHeap
- SplMinHeap
- SplPriorityQueue
- SplFixedArray
- SplObjectStorage
SPL fornece um conjunto de estruturas de dados padrão. Elas são agrupadas aqui de acordo com sua implementação subjacente, que geralmente define seu campo de aplicação geral.
Listas Duplamente Encadeadas
Uma Lista Duplamente Encadeada (DLL) é uma lista de nós vinculados em ambas as direções entre si. As operações de iteração, acesso a ambas as extremidades, adição ou remoção de nós têm um custo de O(1) quando a estrutura subjacente é uma DLL. Portanto, ela fornece uma implementação decente para pilhas e filas.
Heaps
Heaps são estruturas semelhantes a árvores que seguem a propriedade de heap: cada nó é maior ou igual aos seus filhos, quando comparados usando o método de comparação implementado, que é global para o heap.
Arrays
Arrays são estruturas que armazenam os dados de forma contínua, acessíveis via índices. Não os confunda com arrays PHP: os arrays PHP são, na verdade implementados como tabelas de hash ordenadas.
Map
Um mapa é uma estrutura de dados que contém pares chave-valor. Os arrays PHP podem ser vistos como mapas de inteiros/strings para valores. SPL fornece um mapa de objetos para dados. Esse mapa também pode ser usado como um conjunto de objetos.