41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
0
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
41
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
8
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
34
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
34
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
34
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
13
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
26 13
25
3 6
19 0 12
17 8
4 2
17
26 13 17 25 19 8 17 3 6 0 12 4 2 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
26
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
26 25
13
3 6
19 0 12
17 8
4 2
17
26 25 17 13 19 8 17 3 6 0 12 4 2 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
2
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
25 2
13
3 6
19 0 12
17 8 4
17
25 2 17 13 19 8 17 3 6 0 12 4 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
25
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
25 19
13
3 6
12
0 2
17 8 4
17
25 19 17 13 12 8 17 3 6 0 2 4 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
25
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
4 19
13
3 6
12
0 2
17
8 17
4 19 17 13 12 8 17 3 6 0 2 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
19
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
19 13
4
3 6
12
0 2
17
8 17
19 13 17 4 12 8 17 3 6 0 2 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
19
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
19 13
6
3 4
12
0 2
17
8 17
19 13 17 6 12 8 17 3 4 0 2 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
2
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
17 13
6
3 4
12 0
2
8 17
17 13 2 6 12 8 17 3 4 0 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
17
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
17 13
6
3 4
12 0
17
8 2
17 13 17 6 12 8 2 3 4 0 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
0 13
6
3 4
12
17
8 2
0 13 17 6 12 8 2 3 4 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
17 13
6
3 4
12
0
8 2
17 13 0 6 12 8 2 3 4 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
17 13
6
3 4
12
8
0 2
17 13 8 6 12 0 2 3 4 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
17 13
6
3 4
12
8
0 2
17 13 8 6 12 0 2 3 4 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
4 13
6 3
12
8
0 2
4 13 8 6 12 0 2 3 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
13 4
6 3
12
8
0 2
13 4 8 6 12 0 2 3 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
13 12
6 3
4
8
0 2
13 12 8 6 4 0 2 3 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
13 12
6 3
4
8
0 2
13 12 8 6 4 0 2 3 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
3 12
6 4
8
0 2
3 12 8 6 4 0 2 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
12 3
6 4
8
0 2
12 3 8 6 4 0 2 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
12 6
3 4
8
0 2
12 6 8 3 4 0 2 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
12 6
3 4
8
0 2
12 6 8 3 4 0 2 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
2 6
3 4
8 0
2 6 8 3 4 0 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
8 6
3 4
2 0
8 6 2 3 4 0 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
8 6
3 4
2 0
8 6 2 3 4 0 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
0 6
3 4
2
0 6 2 3 4 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
6 0
3 4
2
6 0 2 3 4 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
6 4
3 0
2
6 4 2 3 0 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
6 4
3 0
2
6 4 2 3 0 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
0 4
3
2
0 4 2 3 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
4 0
3
2
4 0 2 3 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
4 3
0
2
4 3 2 0 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
4 3
0
2
4 3 2 0 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
0
3 2
0 3 2 4 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
3
0 2
3 0 2 4 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
3
0 2
3 0 2 4 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
2 0
2 0 3 4 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
2 0
2 0 3 4 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
Heapsort Heapsort
Heapsort – Algorithmus und Beispiel
0
0 2 3 4 6 8 12 13 17 17 19 25 26 34 41 69
1void heapSort(int E[]) {
2 buildHeap(E);
3 for (int i = E.length - 1; i > 0; i--) {
4 swap(E[0], E[i]);
5 heapify(E, i, 0);
6 }
7}
Heapsort Heapsort