Hi there! Esta página web cobre o espaço e o tempo das complexidades Big-O de algoritmos comuns usados na Informática. Ao preparar-me para entrevistas técnicas no passado, dei por mim a passar horas a rastejar pela Internet reunindo as melhores, médias e piores complexidades de algoritmos de pesquisa e classificação para que eu não ficasse perplexo quando me perguntassem sobre eles. Ao longo dos últimos anos, entrevistei em várias empresas de ponta do Vale do Silício, e também algumas empresas maiores, como o Google, Facebook, Yahoo, LinkedIn, e Uber, e cada vez que me preparava para uma entrevista, pensava para mim mesmo “Porque é que alguém não criou uma boa folha de respostas de fraude Big-O?”. Assim, para poupar a todos vocês, gente fina, uma tonelada de tempo, eu fui em frente e criei uma. Aproveitem! – Eric
Veja o El Grapho, uma biblioteca de visualização de dados gráficos que suporta milhões de nós e bordas
Big-O Gráfico de Complexidade
| Horrible | Bad | Fair | Good | 
Estrutura Comum de Dados Operações
| Estrutura de Dados | Complexidade Temporal | Complexidade Espacial | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Média | Pior | th>>Worst | th> | Search | Θ(n) | O(n) | |||||||
| Stack | Θ(n) | Θ(n) | Θ(1) | Θ(1) | O(n) | O(1) | |||||||
| Queue | Θ(n) | Θ(n) | Θ(1) | Θ(1) | O(n) | ||||||||
| Singly-Lista ligada | |||||||||||||
| Θ(1) | O(1) | ||||||||||||
| Skip List | Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | O(n) | O(n) | O(n log(n)) | ||||||
| Hash Table | N/A | Θ(1) | Θ(1) | O(n) | O(n) | ||||||||
| Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | O(n) | O(n) | O(n) | O(n) | ||||||
| Árvore cartesiana | N/A | Θ(log(n)) | Θ(log(n)) | N/A | O(n) | O(n) | |||||||
| O(log(n)) | O(log(n)) | Red-Black Tree | O(log(n)) | O(log(n)) | |||||||||
| Splay Tree | N/A | Θ(log(n)) | N/A | O(log(n)) | O(log(n)) | O(log(n)) | O(n) | ||||||
| AVL Tree | Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | O(log(n)) | O(log(n)) | O(log(n)) | O(n) | |||||
| KD Tree | Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | Θ(log(n)) | O(n) | O(n) | O(n) | O(n) | O(n) | ||||
Array Sorting Algorithms
| Algorithm | Time Complexity | Space Complexity | >th>>Best | Average | Worst | 
|---|---|---|---|---|
| Quicksort | Ω(n log(n)) | Θ(n log(n)) | O(n^2) | |
| Mergesort | Ω(n log(n)) | Θ(n log(n)) | O(n) | |
| Timsort | Ω(n) | Θ(n log(n)) | O(n log(n)) | O(n) | 
| Ω(n log(n)) | Θ(n log(n)) | O(n log(n)) | ||
| Bubble Sort | Ω(n) | Θ(n^2) | O(1) | |
| Insertion Sort | Ω(n) | Θ(n^2) | O(n^2) | O(1) | 
| Selection Sort | Ω(n^2) | Θ(n^2) | ||
| Tree Sort | Ω(n log(n)) | Θ(n log(n)) | O(n^2) | O(n) | 
| Shell Sort | Ω(n log(n)) | Θ(n(log(n))^2) | O(n(log(n))^2) | |
| Ω(n+k) | Θ(n+k) | O(n) | ||
| Radix Sort | Ω(nk) | O(nk) | O(n+k) | |
| Counting Sort | Ω(n+k) | Θ(n+k) | ||
| Cubesort | Ω(n) | Θ(n log(n)) | O(n log(n)) | O(n) | 
Aprenda Mais
- Rasgando a Entrevista de Codificação: 150 Perguntas e Soluções de Programação
- Estruturas de Dados e Algoritmos em Java (2ª Edição)
li>Introdução aos Algoritmos, 3ª Edição
JavaScript de Alto Desempenho (Construir Interfaces de Aplicações Web mais Rápidas)
Ganhe a Grande-O Póster da Folha de Cópias
  
 
Contribuidores
- Eric Rowell
- Quentin Pleple
- Michael Abed
- Nick Dizazzo
- Adam Forsyth
- Felix Zhu
- Jay Engineer
- Josh Davis
- Nodir Turakulov
- Jennifer Hamon
- David Dorfman
- Bart Massey
- Ray Pereda
- Si Pham
- Mike Davis
- mcverry
- Max Hoffmann
- Alejandro Ramirez
- Clay Tyler
- Orhan Can Ozalp
- Ayman Singh
- David Morton
- Aurelien Ooms
- Sebastian Paaske Torholm
- Koushik Krishnan
- Drew Bailey
- Robert Burke
li>Bahador Saketli>Damon Davisonli>Alvin Wanli>Alan Briolatli>Drew Hannayli>Andrew Rasmussenli>Dennis Tsangli>Vinnie Magroli>Adam Arold
li>Aneel Nazarethli>Rahul Chowdhuryli>Jonathan McElroyli>steven41292li>Brandon Amosli>Joel Friedlyli>Casper Van Gheluweli>Eric Lefevre-.Ardantli>Olegli>Renfred Harperli>Piper Chesterli>Miguel Amigotli>Apurva Kli>Matthew Daroncoli>Yun-Cheng Lin
Faça esta Página Melhor
Edite estas tabelas!