- instale o node.js e rode os arquivos usando:
node nome_do_arquivo.js
- caso esteja usando o vs code siga o tutorial
ESTRUTURA DE DADOS | CASOS MÉDIOS | PIOR CASO | ||||
---|---|---|---|---|---|---|
Inserção | Remoção | Busca | Inserção | Remoção | Busca | |
Array/Queue/Stack | O(1) | O(1) | O(n) | O(1) | O(1) | O(n) |
LinkedList | O(1) | O(1) | O(n) | O(1) | O(1) | O(n) |
DoublyLinkedList | O(1) | O(1) | O(n) | O(1) | O(1) | O(n) |
HashTable | O(1) | O(1) | O(1) | O(n) | O(n) | O(n) |
BinarySearchTree | O(log(n) | O(log(n) | O(log(n) | O(n) | O(n) | O(n) |
AVLTree | O(log(n) | O(log(n) | O(log(n) | O(log(n) | O(log(n) | O(log(n) |
RedBlackTree | O(log(n) | O(log(n) | O(log(n) | O(log(n) | O(log(n) | O(log(n) |
BinaryHeap | O(log(n) | O(log(n) | O(1): encontrar min e max |
O(log(n) | O(log(n) | O(1) |
- Priority queue: uma fila em que o objeto possui uma prioridade associada quando é inserido na fila.
- Multiset (bag ou mset): um multiconjunto é a generalização de um conjunto, de tal forma que permite a repetição de elementos.
- Hashset: um conjunto com função de espalhamento.
- DoubleHashTable: hashtable que usa função de espalhamento dupla para lidar com colisões.
- NestedHashTable: hashtable que usa aninhamento de tabelas de espalhamento para lidar com colições e armazenar dados em hierarquia.
- Hashed Array Tree: Árvore que soluciona o problemas do array statico (aumento de comprimento) de forma mais performática que o array de comprimento variavel.
- Rope: estrutura baseada em árvores que serve para armazenar strings longas.