Estimando complexidade de tempo do algoritmo com o tamanho de n

Página Inicial / ∣V∣+∣E∣ (Gráfico) / Estimando complexidade de tempo do algoritmo com o tamanho de n
n Pior algoritmo que passa Notas
≤ [10..11] O(n!), O(n6) ex. Enumerar permutações
≤ [15..18] O(2nn2) ex. PD do Caixeiro-Viajante
≤ [18..22] O(2nn) ex. PD com técnica de máscara de bits
≤ 100 O(n4) ex. PD com 3 dimensões + laço O(n), nCk=4
≤ 400 O(n3) ex. Floyd-Warshall
≤ 2⋅103 O(n2lg n) ex. 2 laços aninhados + consulta em árvore
≤ 5⋅104 O(n2) ex. Bubble/Selection/Insertion Sort
≤ 105 O(n lg2 n) =
O((lg n)(n lg n))
ex. Construção de vetor de sufixos padrão
≤ 106 O(n lg n) ex. Merge Sort, construir árvore de segmento
≤ 107 O(n lg lg n) ex. Crivo de Eratóstenes, função totiente
≤ 108 O(n), O(lg n), O(1) ex. Solução matemática. A maioria porém é n ≤ 109 devido ao gargalo de E/S

Adaptado de 2013, Competitive Programming 3. Steven Halim, Felix Halim. Leva em conta 108 operações por segundo (original é 3 segundos com tempo limite de 3 segundos).

n Complexidade de tempo necessária
≤ 10 O(n!)
≤ 20 O(2n)
≤ 500 O(n3)
≤ 5000 O(n2)
≤ 106 O(n lg n) ou O(n)
é grande O(1) ou O(lg n)

Adaptado de 2018, Competitive Programmer's Handbook. Antti Laaksonen.

Estimativas de instruções por segundo: