Considere os dois algoritmos a seguir para pesquisar em uma matriz classificada de elementos:
A) pesquisa de interpolação e pesquisa binária simulada em paralelo, e
B) pesquise por etapas alternadas de interpolação e etapas binárias.
Ambos os algoritmos têm a complexidade do pior caso (e a complexidade média para uma distribuição razoável). Existe um modelo de complexidade que permita separar esses dois algoritmos (expressando quando um é melhor que o outro)? Em particular, existe um exemplo em que a simulação em paralelo está superando o algoritmo de pesquisa mista?2 lg lg n
--- Alguns antecedentes básicos ---
1) de interpolação para o elemento em uma matriz classificada entre a posição e faz uma comparação na posição , e reduz o intervalo de pesquisa para ou acordo com o resultado (em oposição à pesquisa binária, que compara ao elemento na posição ).T i j g = i + ( j - i ) / ( T [ j ] - T [ i ] ) ∗ ( x - T [ i ] ) [ i , g ] ] g , j ] x ( i + j ) / 2
2) A complexidade de pior caso do algoritmo de busca simulando em pesquisa e interpolação de pesquisa binária paralela é : Dados dois algoritmos e dos piores complexidades caso e , o pior caso de a simulação paralela de e , parando assim que alguém termina, tem complexidade . A complexidade da pesquisa que alterna as etapas da pesquisa binária e pesquisa de interpolação também é 2 \ lg n + 1 , porque o intervalo de pesquisa é pelo menos reduzido em dois a cada duas comparações.A B f ( n ) g ( n ) A B 2 min { f ( n ) , g ( n ) } ∈ O ( min f ( n ) , g ( n ) ) 2 lg n + 1