Métodos de Ordenação e
Busca
Ordenação
Ordenação - bolha
Ordenação - Bolha
Ordenação - Bolha
Métodos de Busca
Busca Sequencial – vetor não
ordenado
Busca Sequencial – vetor não
ordenado
Int busca(int n, int *vet, int elem)
{
int i = 0;
while (i < n && vet[i] != elem)
i++;
if (i == n)
return -1; // elemento não encontrado
else return i; //elemento na posição i
}
Análise da Busca Sequencial
Busca Sequencial em Vetor
Ordenado
Análise da Busca Sequencial –
vetor ordenado
Busca Sequencial em Vetor
Ordenado
int busca_ord(int n, int *vet, int elem)
{
if (elem<vet[0] && elem>vet[n-1]) // teste extremos do
vetor
return -1; // elemento não está no vetor
i = 0;
while (vet[i] < elem)
i ++;
if ( vet[i] == elem) // encontrou o elemento
return i; // na posição i
else return -1; // elemento não está no vetor
}
Busca Binária
4
7
8
inicio
meio
fim
0
5
11
Elem = 22
10 14 21 22 36 62 77 81 91
22 >21, inicio = meio +1
4
7
8
inicio
meio
fim
6
8
11
10 14 21 22 36 62 77 81 91
22 < 62, fim= meio -1
4
7
8
inicio
meio
fim
6
6
7
10 14 21 22 36 62 77 81 91
22 = 22, o elem está na posição meio
Download

modulo 6