Algoritmos e Estruturas de Dados em JavaScript
(github.com)- Explicações sobre algoritmos e estruturas de dados amplamente conhecidos, incluindo exemplos baseados em JavaScript e vídeos relacionados no YouTube [tradução em coreano]
→ B : 63 para iniciantes
→ A : 69 para usuários experientes
Estruturas de dados
B: lista ligada, lista duplamente ligada, fila, pilha, tabela hash, heap, fila de prioridade
A: trie, árvore, árvore binária de busca, árvore AVL, árvore Red-Black, árvore de segmentos, árvore de Fenwick, grafo, conjunto disjunto, filtro de Bloom
Algoritmos
- Matemática
→ B : fatorial, número de Fibonacci, verificação de número primo, algoritmo de Euclides, mínimo múltiplo comum, crivo de Eratóstenes, verificação de potência de 2, triângulo de Pascal
→ A : partição de números naturais, algoritmo π de Liu Hui - calcular uma aproximação de π com base em N-gonos
- Conjuntos
→ B : produto cartesiano, embaralhamento de Fisher–Yates
→ A : conjunto potência, permutações, combinações, subsequência comum mais longa, subsequência crescente mais longa, Shortest Common Supersequence (SCS), problema da mochila
- Strings
→ B : distância de Hamming - número de posições com símbolos diferentes
→ A : distância de edição, algoritmo de Knuth-Morris-Pratt, algoritmo Z, algoritmo de Rabin-Karp, substring comum mais longa, correspondência de expressões regulares
- Buscas
→ B : busca linear, busca por salto, busca binária, busca por interpolação
- Ordenação
→ B : bubble sort, selection sort, insertion sort, heap sort, merge sort, quick sort, shell sort, counting sort, radix sort
- Árvores
→ B : busca em profundidade (DFS), busca em largura (BFS)
- Grafos
→ B : busca em profundidade (DFS), busca em largura (BFS), algoritmo de Kruskal
→ A : algoritmo de Dijkstra, algoritmo de Bellman-Ford, algoritmo de Floyd-Warshall, detecção de ciclo, algoritmo de Prim, ordenação topológica, ponto de articulação, ponte, caminho de Euler e circuito de Euler, caminho hamiltoniano, componentes fortemente conectados, problema do caixeiro viajante
- Sem categoria
→ B : Torre de Hanói, rotação de matriz quadrada, jogo do salto, exemplo de algoritmo guloso, caminhos únicos, problema de retenção de água da chuva
→ A : problema das N-Rainhas, problema do passeio do cavalo
Algoritmos por paradigma
-
Força bruta (Brute Force)
-
Algoritmo guloso (Greedy)
-
Divisão e conquista (Divide and Conquer)
-
Programação dinâmica (Dynamic Programming)
-
Backtracking
Ainda não há comentários.