Académique Documents
Professionnel Documents
Culture Documents
mtodos elementares
Algoritmos e Estruturas de Dados II
Ordenao
Objetivo:
Rearranjar os itens de um vetor ou lista de modo que
suas chaves estejam ordenadas de acordo com
alguma regra
Estrutura:
typedef int chave_t;
struct item {
chave_t chave;
/* outros componentes */
};
Critrios de Classificao
Ordenao interna
Ordenao externa
Critrios de Classificao
Estabilidade:
Adams
Adams
Adams
Black
Smith
Smith
Brown
Washington
Black
Jackson
Jackson
Jackson
Jones
Black
Washington
Smith
White
White
Thompson
Wilson
Wilson
Washington
Thompson
Brown
White
Brown
Jones
Wilson
Jones
Thompson
D
4
Critrios de Classificao
Adaptabilidade:
Critrios de Classificao
Uso da memria:
Critrios de Classificao
Critrios de Avaliao
10
Comparaes C(n):
C(n) =
n 2
n 2
n 2
n 2
i =0
i =0
i =0
i =0
(n i 1) = n i 1
(n 2)(n 1)
= n(n 1)
( n 1)
2
n2 n
=
= O(n 2 )
2
Movimentaes M(n):
M (n) = 3(n 1)
11
Vantagens:
Desvantagens:
No adaptvel
Algoritmo no estvel
12
Mtodo Insero
14
X
15
X
16
Comparaes C(n):
melhor caso: Ci = 1
pior caso: Ci = i
caso mdio: Ci = (1 + 2 + 3 + ... + i) / i
1 i
1 i (i + 1) i + 1
Ci = k =
=
i k =1
i 2
2
17
Comparaes C(n):
Anel externo:
n 1
C
i =1
Complexidade total:
C (n) =
n 1
1 = n 1 = O (n)
i =1
( n 1)( n ) n 2 n
C (n) = i =
=
= O (n 2 )
2
2
2
i =1
n 1
18
Comparaes C(n):
Caso mdio:
C (n) =
n 1
i =1
n 1
i + 1 1 n 1
1 n ( n 1)
= i + 1 =
+ ( n 1)
2
2 i =1
2
2
i =1
n2 n n 1 n2 n 1
+
=
+ = O (n 2 )
=
4
4 2
4 2
19
Melhor Caso:
1
Pior Caso:
6
6
20
Vantagens:
Desvantagens:
Ideia
Algoritmo
1 passada
2 passada
23
24
X
25
= n(n 1)
=
n 2
n 2
n 2
i =0
i =0
i =0
n i 1
(n 2)(n 1)
(n 1)
2
n2 n
= O(n 2 )
2
26
n2 n
= O(n2 )
M(n) = 3 =3 (n i 1) = 3
2
i = 0 j =1
i =0
n 2 ni
n 2
27
Vantagens
Algoritmo simples
Algoritmo estvel
Desvantagens
No adaptvel
Muitas trocas de itens
28
Exerccios
1.
2.
3.
4.
29
http://www.sorting-algorithms.com
31