Please enable JavaScript.
Coggle requires JavaScript to display documents.
Estruturas de Dados e Bibliotecas - Coggle Diagram
Estruturas de Dados e Bibliotecas
Estruturas de Dados Lineares
Sorting
O(n²): Bubble, Selection, Insertion (lentíssimo)
O(n log n): Merge, Heap, Quick (padrão em competições)
O(n): Counting, Radix, Bucket (uso específico)
Searching
O(1): Hashing (rápido mas raro)
O(log n): Binary search (array ordenado)
O(n): Linear search
Dynamic Array
Tamanho ajustável em tempo de execução
Operações: push_back(), at(), [], assign(), clear(), erase(), iteradores
Stack
LIFO – Last In First Out
Operações: push(), pop(), top(), empty()
Static Array
Armazena dados sequenciais
Operações: acessar, ordenar, scan linear, busca binária
Linked List
Evitar em competições por acesso lento
Única exceção: inserir dinamicamente em qualquer posição
Queue
Inserção/remoção O(1) nas duas extremidades
Uso: Sliding Window Algorithm
Operações: push_back(), pop_front(), push_front(), pop_back()
Deque
FIFO – First In First Out
Operações: push()/pop(), front()/back(), empty()
Usos: BFS
Estruturas de Dados Não Lineares
Min/Max Heap
Estrutura para fila de prioridade
Operações: push, pop, top
Ex: C++ STL priority_queue
Hash Table / Hash Map
Armazenamento rápido por chave
Operações: insert, delete, find
Binary Search Tree
Estrutura de árvore para busca
Operações: insert, delete, find, traversal
Ex: C++ STL map
Custom / Advanced Data Structures
Estruturas sem implementação pronta
Exemplos: Segment Tree, Fenwick Tree, Union-Find
Visão Geral e Motivação
DS = Forma de armazenar e organizar dados
Conhecer forças, fraquezas e complexidade de tempo/espaço dos DS.