Escolar Documentos
Profissional Documentos
Cultura Documentos
AULA #3
___________________________________________________________________
Março de 2021
1. Algoritmos de Ordenação
>> BubbleSort
>> SelectionSort
>> InsertSort
Recursividade
Recursão/Recursividade é caracterizada por auto
chamada no corpo de um algoritmo, i.é., um
método chama-se a si mesmo.
4
Recursividade (cont.)
Exemplo:
6
7
Implementação (bubblesort)
public static void bubbleSort(int[]a) {
for (int i = 0, k=1; i < a.length-1; i++, k++) {
for (int j = 0; j < a.length-k; j++) {
if (a[j] > a[j+1]) {
swap(a, j, j+1);
}
System.out.println(a);
}
}
}
8
Selection sort
O selection sort (ordenação por seleção) -
ordenação baseada em passar sempre o menor
valor do vetor para a primeira posição (ou o
maior dependendo da ordem requerida),
12
Insertion Sort
Insertion sort, ou ordenação por inserção, é um
simples algoritmo de ordenação, eficiente quando
aplicado a um pequeno número de elementos.
13
14
Implementação
public static void insertionSort(int[] a)
{
for (int i = 0; i < a.length; i++)
{
int copyNumber = a[i];
int j = i;
while (j > 0 && copyNumber < a[j-1])
{
a[j] = a[j-1];
j--;
System.out.println(a);
}
a[j] = copyNumber;
System.out.println(a);
}
System.out.println(a);
}
15
Pesquisas
Pesquisa Sequencial
19
( )
( )
( )
20
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
2 5 10 12 15 20 28 29 30 40 43 45 60 70 79
42
21
O dado de índice meio é o dado procurado
então a função retorna meio = 6 (o índice
do dado procurado).
22
1. Merge sort
I33
2. Heapsort (2,3)
1. Quick sort
3. Shell sort (4,5)
2. Merge sort
4. Radix sort (6)
3. Heapsort
• Gnome sort
4. Shell sort
5. Counting sort (7)
5. Cocktail sort
• Bucket sort
6. Radix sort
6. Cocktail sort (8,9)
• Gnome sort
7. Timsort (10)
8,9 Quick sort (11,12)
23