Buscar

algoritmos recursivos exemplos busca bonaria

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

' $
ALGORITMOS RECURSIVOS
Prof. Ce´sar Francisco de Moura Couto
Matema´tica Discreta
& %
' $
CEFET-MG Algoritmos Recursivos
Algoritmos Recursivos
• Um algoritmo recursivo para computar mdc(a,b).
• Soluc¸a˜o:
procedure mdc(a,b: numeros inteiros n~ao negativos com a < b)
if a = 0 then mdc(a,b) := b
else mdc(a,b) := mdc(b mod a, a)
end
Prof. Ce´sar Francisco de Moura Couto 1& %
' $
CEFET-MG Algoritmos Recursivos
Algoritmos Recursivos
• Um algoritmo recursivo para busca linear.
• Soluc¸a˜o:
procedure busca(i,j,x: numeros inteiros, 1 <= i <= m, 1 <= j <= m)
if a[i] = x then
localizacao := i
else if i = j then
localizacao := 0
else
busca(i + 1, j, x)
end
Prof. Ce´sar Francisco de Moura Couto 2& %
' $
CEFET-MG Algoritmos Recursivos
Algoritmos Recursivos
• Um algoritmo recursivo para busca binaria
• Soluc¸a˜o:
procedure buscabinaria(i,j,x: numeros inteiros, 1 <= i <= m, 1 <= j <= m)
m := [(i + j) / 2]
if a[m] = x then
localizacao := m
else if (x < a[m] e i < m) then
buscabinaria (x, i, m - 1)
else if (x > a[m] e j > m) then
buscabinaria (x, m + 1, j)
else
localizacao := 0
end
Prof. Ce´sar Francisco de Moura Couto 3& %
' $
CEFET-MG Algoritmos Recursivos
Algoritmos Recursivos
• O algoritmo Merge Sort recursivo para ordenac¸a˜o de um vetor.
• Soluc¸a˜o: Entendimento do Merge Sort. Ordenamento dos nu´meros 8 2 4 6 9 7 10 1 5 3
Prof. Ce´sar Francisco de Moura Couto 4& %
' $
CEFET-MG Algoritmos Recursivos
Algoritmos Recursivos
• Segue o algoritmo:
procedure mergesort(L = [a1, ..., an])
if n > 1 then
m := n/2
L1 := [a1, ..., am]
L2 := [am+1, ..., an]
L := merge(mergesort(L1), mergesort(L2))
end
Prof. Ce´sar Francisco de Moura Couto 5& %

Outros materiais