Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially...
Transcript of Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially...
![Page 1: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/1.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Initially the array may not satisfy the heap property.The heap will be built up by calling heapify on all internal nodes from the bottom up.
Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT-GS509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: D 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: S 37: 5 38: 0 39: 9
![Page 2: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/2.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 19 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT-GS509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: D 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: S 37: 5 38: 0 39: 9
![Page 3: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/3.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 19 and its children is node 19.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT-GS509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: D 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: S 37: 5 38: 0 39: 9
![Page 4: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/4.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 18 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT-GS509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: D 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: S 37: 5 38: 0 39: 9
![Page 5: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/5.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 18 and its children is node 18.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT-GS509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: D 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: S 37: 5 38: 0 39: 9
![Page 6: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/6.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 17 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT-GS509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: D 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: S 37: 5 38: 0 39: 9
![Page 7: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/7.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 17 and its children is node 36.Root and max will be swapped and heapify will recurse on the new node 36.
Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT-GS509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: D 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: S 37: 5 38: 0 39: 9
![Page 8: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/8.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 36.Heap size: 40 Array contents: ALGORITHMS-CAMBRISGE-2015-HEAPSORT-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 9: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/9.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 36 and its children is node 36.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CAMBRISGE-2015-HEAPSORT-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 10: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/10.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 16 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMBRISGE-2015-HEAPSORT-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 11: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/11.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 16 and its children is node 33.Root and max will be swapped and heapify will recurse on the new node 33.
Heap size: 40 Array contents: ALGORITHMS-CAMBRISGE-2015-HEAPSORT-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: I 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: T 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 12: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/12.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 33.Heap size: 40 Array contents: ALGORITHMS-CAMBRTSGE-2015-HEAPSORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 13: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/13.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 33 and its children is node 33.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CAMBRTSGE-2015-HEAPSORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 14: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/14.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMBRTSGE-2015-HEAPSORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 15: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/15.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 15.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CAMBRTSGE-2015-HEAPSORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 16: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/16.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 14 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMBRTSGE-2015-HEAPSORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 17: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/17.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 14 and its children is node 30.Root and max will be swapped and heapify will recurse on the new node 30.
Heap size: 40 Array contents: ALGORITHMS-CAMBRTSGE-2015-HEAPSORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: B
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: S
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 18: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/18.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 30.Heap size: 40 Array contents: ALGORITHMS-CAMSRTSGE-2015-HEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 19: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/19.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 30 and its children is node 30.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CAMSRTSGE-2015-HEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 20: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/20.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 13 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMSRTSGE-2015-HEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 21: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/21.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 13 and its children is node 13.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CAMSRTSGE-2015-HEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 22: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/22.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 12 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CAMSRTSGE-2015-HEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 23: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/23.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 12 and its children is node 26.Root and max will be swapped and heapify will recurse on the new node 26.
Heap size: 40 Array contents: ALGORITHMS-CAMSRTSGE-2015-HEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: A 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: H 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 24: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/24.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 26.Heap size: 40 Array contents: ALGORITHMS-CHMSRTSGE-2015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 25: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/25.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 26 and its children is node 26.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CHMSRTSGE-2015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 26: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/26.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 11 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CHMSRTSGE-2015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 27: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/27.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 11 and its children is node 11.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS-CHMSRTSGE-2015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 28: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/28.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 10 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS-CHMSRTSGE-2015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 29: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/29.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 10 and its children is node 21.Root and max will be swapped and heapify will recurse on the new node 21.
Heap size: 40 Array contents: ALGORITHMS-CHMSRTSGE-2015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: - 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: 2 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 30: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/30.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 21.Heap size: 40 Array contents: ALGORITHMS2CHMSRTSGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 31: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/31.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 21 and its children is node 21.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS2CHMSRTSGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 32: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/32.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 9 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS2CHMSRTSGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 33: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/33.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 9 and its children is node 9.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHMS2CHMSRTSGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 34: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/34.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 8 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHMS2CHMSRTSGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 35: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/35.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 8 and its children is node 17.Root and max will be swapped and heapify will recurse on the new node 17.
Heap size: 40 Array contents: ALGORITHMS2CHMSRTSGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: M 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: S 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 36: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/36.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 17.Heap size: 40 Array contents: ALGORITHSS2CHMSRTMGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 37: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/37.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 17 and its children is node 17.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITHSS2CHMSRTMGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 38: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/38.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITHSS2CHMSRTMGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 39: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/39.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 16.Root and max will be swapped and heapify will recurse on the new node 16.
Heap size: 40 Array contents: ALGORITHSS2CHMSRTMGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: H 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: T 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 40: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/40.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 16.Heap size: 40 Array contents: ALGORITTSS2CHMSRHMGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: H 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 41: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/41.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 16 and its children is node 33.Root and max will be swapped and heapify will recurse on the new node 33.
Heap size: 40 Array contents: ALGORITTSS2CHMSRHMGE--015-AEAPBORI-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: H 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: I 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 42: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/42.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 33.Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 43: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/43.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 33 and its children is node 33.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 44: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/44.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 45: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/45.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 6.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 46: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/46.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 5 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 47: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/47.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 5 and its children is node 5.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 48: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/48.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 4 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 49: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/49.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 4 and its children is node 9.Root and max will be swapped and heapify will recurse on the new node 9.
Heap size: 40 Array contents: ALGORITTSS2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: R 5: I 6: T
7: T 8: S 9: S 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 50: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/50.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 9.Heap size: 40 Array contents: ALGOSITTSR2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: S 5: I 6: T
7: T 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 51: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/51.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 9 and its children is node 9.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGOSITTSR2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: S 5: I 6: T
7: T 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 52: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/52.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGOSITTSR2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: S 5: I 6: T
7: T 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 53: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/53.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 40 Array contents: ALGOSITTSR2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: O 4: S 5: I 6: T
7: T 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 54: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/54.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 40 Array contents: ALGTSITOSR2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: O 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 55: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/55.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 15.Root and max will be swapped and heapify will recurse on the new node 15.
Heap size: 40 Array contents: ALGTSITOSR2CHMSRIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: O 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 56: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/56.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15.Heap size: 40 Array contents: ALGTSITRSR2CHMSOIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: O 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 57: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/57.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 32.Root and max will be swapped and heapify will recurse on the new node 32.
Heap size: 40 Array contents: ALGTSITRSR2CHMSOIMGE--015-AEAPBORH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: O 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: R 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 58: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/58.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 32.Heap size: 40 Array contents: ALGTSITRSR2CHMSRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 59: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/59.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 32 and its children is node 32.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALGTSITRSR2CHMSRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 60: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/60.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALGTSITRSR2CHMSRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 61: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/61.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 40 Array contents: ALGTSITRSR2CHMSRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: G
3: T 4: S 5: I 6: T
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 62: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/62.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 40 Array contents: ALTTSIGRSR2CHMSRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: G
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 63: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/63.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 14.Root and max will be swapped and heapify will recurse on the new node 14.
Heap size: 40 Array contents: ALTTSIGRSR2CHMSRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: G
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: S
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 64: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/64.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 14.Heap size: 40 Array contents: ALTTSISRSR2CHMGRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: G
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 65: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/65.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 14 and its children is node 29.Root and max will be swapped and heapify will recurse on the new node 29.
Heap size: 40 Array contents: ALTTSISRSR2CHMGRIMGE--015-AEAPBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: G
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: P 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 66: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/66.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 29.Heap size: 40 Array contents: ALTTSISRSR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 67: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/67.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 29 and its children is node 29.No swap is necessary, heapify done.
Heap size: 40 Array contents: ALTTSISRSR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 68: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/68.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ALTTSISRSR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 69: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/69.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 40 Array contents: ALTTSISRSR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: L 2: T
3: T 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 70: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/70.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 40 Array contents: ATTLSISRSR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: L 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 71: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/71.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 8.Root and max will be swapped and heapify will recurse on the new node 8.
Heap size: 40 Array contents: ATTLSISRSR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: L 4: S 5: I 6: S
7: R 8: S 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 72: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/72.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 8.Heap size: 40 Array contents: ATTSSISRLR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: S 4: S 5: I 6: S
7: R 8: L 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 73: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/73.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 8 and its children is node 17.Root and max will be swapped and heapify will recurse on the new node 17.
Heap size: 40 Array contents: ATTSSISRLR2CHMPRIMGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: S 4: S 5: I 6: S
7: R 8: L 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: M 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 74: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/74.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 17.Heap size: 40 Array contents: ATTSSISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: S 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 75: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/75.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 17 and its children is node 17.No swap is necessary, heapify done.
Heap size: 40 Array contents: ATTSSISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: S 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 76: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/76.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the build heap (heap-up) process.Heap size: 40 Array contents: ATTSSISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: S 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 77: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/77.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 40 Array contents: ATTSSISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: A
1: T 2: T
3: S 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 78: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/78.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 40 Array contents: TATSSISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: T
1: A 2: T
3: S 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 79: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/79.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 40 Array contents: TATSSISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: T
1: A 2: T
3: S 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 80: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/80.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 40 Array contents: TSTASISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: T
1: S 2: T
3: A 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 81: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/81.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 40 Array contents: TSTASISRMR2CHMPRILGE--015-AEAGBOOH-GD509
0: T
1: S 2: T
3: A 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 82: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/82.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 40 Array contents: TSTRSISAMR2CHMPRILGE--015-AEAGBOOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: A 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 83: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/83.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 15.Root and max will be swapped and heapify will recurse on the new node 15.
Heap size: 40 Array contents: TSTRSISAMR2CHMPRILGE--015-AEAGBOOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: A 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: R 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 84: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/84.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15.Heap size: 40 Array contents: TSTRSISRMR2CHMPAILGE--015-AEAGBOOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: A 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 85: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/85.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 31.Root and max will be swapped and heapify will recurse on the new node 31.
Heap size: 40 Array contents: TSTRSISRMR2CHMPAILGE--015-AEAGBOOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: A 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: O 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 86: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/86.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 31.Heap size: 40 Array contents: TSTRSISRMR2CHMPOILGE--015-AEAGBAOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 87: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/87.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 31 and its children is node 31.No swap is necessary, heapify done.
Heap size: 40 Array contents: TSTRSISRMR2CHMPOILGE--015-AEAGBAOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 88: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/88.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
The array now satisfies the heap property.The heap will be emptied by repeatedly taking the root element
and moving it outside of the heap in the underlying array.Heap size: 40 Array contents: TSTRSISRMR2CHMPOILGE--015-AEAGBAOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 89: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/89.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 40 Array contents: TSTRSISRMR2CHMPOILGE--015-AEAGBAOH-GD509
0: T
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0 39: 9
![Page 90: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/90.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 39 Array contents: 9STRSISRMR2CHMPOILGE--015-AEAGBAOH-GD50T
0: 9
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 91: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/91.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 39 Array contents: 9STRSISRMR2CHMPOILGE--015-AEAGBAOH-GD50T
0: 9
1: S 2: T
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 92: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/92.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 39 Array contents: TS9RSISRMR2CHMPOILGE--015-AEAGBAOH-GD50T
0: T
1: S 2: 9
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 93: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/93.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 39 Array contents: TS9RSISRMR2CHMPOILGE--015-AEAGBAOH-GD50T
0: T
1: S 2: 9
3: R 4: S 5: I 6: S
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 94: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/94.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 39 Array contents: TSSRSI9RMR2CHMPOILGE--015-AEAGBAOH-GD50T
0: T
1: S 2: S
3: R 4: S 5: I 6: 9
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 95: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/95.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 14.Root and max will be swapped and heapify will recurse on the new node 14.
Heap size: 39 Array contents: TSSRSI9RMR2CHMPOILGE--015-AEAGBAOH-GD50T
0: T
1: S 2: S
3: R 4: S 5: I 6: 9
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: P
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 96: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/96.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 14.Heap size: 39 Array contents: TSSRSIPRMR2CHM9OILGE--015-AEAGBAOH-GD50T
0: T
1: S 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: 9
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 97: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/97.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 14 and its children is node 29.Root and max will be swapped and heapify will recurse on the new node 29.
Heap size: 39 Array contents: TSSRSIPRMR2CHM9OILGE--015-AEAGBAOH-GD50T
0: T
1: S 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: 9
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: G 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 98: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/98.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 29.Heap size: 39 Array contents: TSSRSIPRMR2CHMGOILGE--015-AEA9BAOH-GD50T
0: T
1: S 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 99: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/99.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 29 and its children is node 29.No swap is necessary, heapify done.
Heap size: 39 Array contents: TSSRSIPRMR2CHMGOILGE--015-AEA9BAOH-GD50T
0: T
1: S 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 100: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/100.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 39 Array contents: TSSRSIPRMR2CHMGOILGE--015-AEA9BAOH-GD50T
0: T
1: S 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5 38: 0
![Page 101: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/101.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 38 Array contents: 0SSRSIPRMR2CHMGOILGE--015-AEA9BAOH-GD5TT
0: 0
1: S 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 102: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/102.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 38 Array contents: 0SSRSIPRMR2CHMGOILGE--015-AEA9BAOH-GD5TT
0: 0
1: S 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 103: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/103.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 38 Array contents: S0SRSIPRMR2CHMGOILGE--015-AEA9BAOH-GD5TT
0: S
1: 0 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 104: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/104.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 4.Root and max will be swapped and heapify will recurse on the new node 4.
Heap size: 38 Array contents: S0SRSIPRMR2CHMGOILGE--015-AEA9BAOH-GD5TT
0: S
1: 0 2: S
3: R 4: S 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 105: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/105.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 4.Heap size: 38 Array contents: SSSR0IPRMR2CHMGOILGE--015-AEA9BAOH-GD5TT
0: S
1: S 2: S
3: R 4: 0 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 106: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/106.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 4 and its children is node 9.Root and max will be swapped and heapify will recurse on the new node 9.
Heap size: 38 Array contents: SSSR0IPRMR2CHMGOILGE--015-AEA9BAOH-GD5TT
0: S
1: S 2: S
3: R 4: 0 5: I 6: P
7: R 8: M 9: R 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 107: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/107.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 9.Heap size: 38 Array contents: SSSRRIPRM02CHMGOILGE--015-AEA9BAOH-GD5TT
0: S
1: S 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: 0 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 108: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/108.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 9 and its children is node 19.Root and max will be swapped and heapify will recurse on the new node 19.
Heap size: 38 Array contents: SSSRRIPRM02CHMGOILGE--015-AEA9BAOH-GD5TT
0: S
1: S 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: 0 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: E 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 109: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/109.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 19.Heap size: 38 Array contents: SSSRRIPRME2CHMGOILG0--015-AEA9BAOH-GD5TT
0: S
1: S 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 110: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/110.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 19 and its children is node 19.No swap is necessary, heapify done.
Heap size: 38 Array contents: SSSRRIPRME2CHMGOILG0--015-AEA9BAOH-GD5TT
0: S
1: S 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 111: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/111.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 38 Array contents: SSSRRIPRME2CHMGOILG0--015-AEA9BAOH-GD5TT
0: S
1: S 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D 37: 5
![Page 112: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/112.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 37 Array contents: 5SSRRIPRME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: 5
1: S 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 113: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/113.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 37 Array contents: 5SSRRIPRME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: 5
1: S 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 114: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/114.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 37 Array contents: S5SRRIPRME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: S
1: 5 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 115: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/115.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 37 Array contents: S5SRRIPRME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: S
1: 5 2: S
3: R 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 116: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/116.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 37 Array contents: SRS5RIPRME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: S
1: R 2: S
3: 5 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 117: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/117.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 37 Array contents: SRS5RIPRME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: S
1: R 2: S
3: 5 4: R 5: I 6: P
7: R 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 118: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/118.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 37 Array contents: SRSRRIP5ME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: S
1: R 2: S
3: R 4: R 5: I 6: P
7: 5 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 119: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/119.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 15.Root and max will be swapped and heapify will recurse on the new node 15.
Heap size: 37 Array contents: SRSRRIP5ME2CHMGOILG0--015-AEA9BAOH-GDSTT
0: S
1: R 2: S
3: R 4: R 5: I 6: P
7: 5 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 120: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/120.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15.Heap size: 37 Array contents: SRSRRIPOME2CHMG5ILG0--015-AEA9BAOH-GDSTT
0: S
1: R 2: S
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: 5 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 121: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/121.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 32.Root and max will be swapped and heapify will recurse on the new node 32.
Heap size: 37 Array contents: SRSRRIPOME2CHMG5ILG0--015-AEA9BAOH-GDSTT
0: S
1: R 2: S
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: 5 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: O 33: H 34: - 35: G 36: D
![Page 122: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/122.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 32.Heap size: 37 Array contents: SRSRRIPOME2CHMGOILG0--015-AEA9BA5H-GDSTT
0: S
1: R 2: S
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G 36: D
![Page 123: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/123.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 32 and its children is node 32.No swap is necessary, heapify done.
Heap size: 37 Array contents: SRSRRIPOME2CHMGOILG0--015-AEA9BA5H-GDSTT
0: S
1: R 2: S
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G 36: D
![Page 124: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/124.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 37 Array contents: SRSRRIPOME2CHMGOILG0--015-AEA9BA5H-GDSTT
0: S
1: R 2: S
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G 36: D
![Page 125: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/125.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 36 Array contents: DRSRRIPOME2CHMGOILG0--015-AEA9BA5H-GSSTT
0: D
1: R 2: S
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 126: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/126.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 36 Array contents: DRSRRIPOME2CHMGOILG0--015-AEA9BA5H-GSSTT
0: D
1: R 2: S
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 127: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/127.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 36 Array contents: SRDRRIPOME2CHMGOILG0--015-AEA9BA5H-GSSTT
0: S
1: R 2: D
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 128: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/128.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 36 Array contents: SRDRRIPOME2CHMGOILG0--015-AEA9BA5H-GSSTT
0: S
1: R 2: D
3: R 4: R 5: I 6: P
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 129: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/129.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 36 Array contents: SRPRRIDOME2CHMGOILG0--015-AEA9BA5H-GSSTT
0: S
1: R 2: P
3: R 4: R 5: I 6: D
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 130: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/130.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 13.Root and max will be swapped and heapify will recurse on the new node 13.
Heap size: 36 Array contents: SRPRRIDOME2CHMGOILG0--015-AEA9BA5H-GSSTT
0: S
1: R 2: P
3: R 4: R 5: I 6: D
7: O 8: M 9: E 10: 2 11: C 12: H 13: M 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 131: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/131.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 13.Heap size: 36 Array contents: SRPRRIMOME2CHDGOILG0--015-AEA9BA5H-GSSTT
0: S
1: R 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: D 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 132: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/132.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 13 and its children is node 27.Root and max will be swapped and heapify will recurse on the new node 27.
Heap size: 36 Array contents: SRPRRIMOME2CHDGOILG0--015-AEA9BA5H-GSSTT
0: S
1: R 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: D 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: E 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 133: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/133.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 27.Heap size: 36 Array contents: SRPRRIMOME2CHEGOILG0--015-ADA9BA5H-GSSTT
0: S
1: R 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 134: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/134.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 27 and its children is node 27.No swap is necessary, heapify done.
Heap size: 36 Array contents: SRPRRIMOME2CHEGOILG0--015-ADA9BA5H-GSSTT
0: S
1: R 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 135: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/135.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 36 Array contents: SRPRRIMOME2CHEGOILG0--015-ADA9BA5H-GSSTT
0: S
1: R 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: - 35: G
![Page 136: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/136.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 35 Array contents: GRPRRIMOME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: G
1: R 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 137: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/137.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 35 Array contents: GRPRRIMOME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: G
1: R 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 138: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/138.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 35 Array contents: RGPRRIMOME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: R
1: G 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 139: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/139.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 35 Array contents: RGPRRIMOME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: R
1: G 2: P
3: R 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 140: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/140.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 35 Array contents: RRPGRIMOME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: R
1: R 2: P
3: G 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 141: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/141.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 35 Array contents: RRPGRIMOME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: R
1: R 2: P
3: G 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 142: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/142.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 35 Array contents: RRPORIMGME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: R
1: R 2: P
3: O 4: R 5: I 6: M
7: G 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 143: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/143.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 15.Root and max will be swapped and heapify will recurse on the new node 15.
Heap size: 35 Array contents: RRPORIMGME2CHEGOILG0--015-ADA9BA5H-SSSTT
0: R
1: R 2: P
3: O 4: R 5: I 6: M
7: G 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: O 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 144: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/144.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15.Heap size: 35 Array contents: RRPORIMOME2CHEGGILG0--015-ADA9BA5H-SSSTT
0: R
1: R 2: P
3: O 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 145: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/145.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 15.No swap is necessary, heapify done.
Heap size: 35 Array contents: RRPORIMOME2CHEGGILG0--015-ADA9BA5H-SSSTT
0: R
1: R 2: P
3: O 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 146: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/146.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 35 Array contents: RRPORIMOME2CHEGGILG0--015-ADA9BA5H-SSSTT
0: R
1: R 2: P
3: O 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H 34: -
![Page 147: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/147.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 34 Array contents: -RPORIMOME2CHEGGILG0--015-ADA9BA5HRSSSTT
0: -
1: R 2: P
3: O 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 148: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/148.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 34 Array contents: -RPORIMOME2CHEGGILG0--015-ADA9BA5HRSSSTT
0: -
1: R 2: P
3: O 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 149: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/149.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 34 Array contents: R-PORIMOME2CHEGGILG0--015-ADA9BA5HRSSSTT
0: R
1: - 2: P
3: O 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 150: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/150.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 4.Root and max will be swapped and heapify will recurse on the new node 4.
Heap size: 34 Array contents: R-PORIMOME2CHEGGILG0--015-ADA9BA5HRSSSTT
0: R
1: - 2: P
3: O 4: R 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 151: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/151.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 4.Heap size: 34 Array contents: RRPO-IMOME2CHEGGILG0--015-ADA9BA5HRSSSTT
0: R
1: R 2: P
3: O 4: - 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 152: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/152.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 4 and its children is node 9.Root and max will be swapped and heapify will recurse on the new node 9.
Heap size: 34 Array contents: RRPO-IMOME2CHEGGILG0--015-ADA9BA5HRSSSTT
0: R
1: R 2: P
3: O 4: - 5: I 6: M
7: O 8: M 9: E 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 153: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/153.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 9.Heap size: 34 Array contents: RRPOEIMOM-2CHEGGILG0--015-ADA9BA5HRSSSTT
0: R
1: R 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: - 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 154: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/154.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 9 and its children is node 19.Root and max will be swapped and heapify will recurse on the new node 19.
Heap size: 34 Array contents: RRPOEIMOM-2CHEGGILG0--015-ADA9BA5HRSSSTT
0: R
1: R 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: - 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: 0 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 155: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/155.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 19.Heap size: 34 Array contents: RRPOEIMOM02CHEGGILG---015-ADA9BA5HRSSSTT
0: R
1: R 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 156: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/156.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 19 and its children is node 19.No swap is necessary, heapify done.
Heap size: 34 Array contents: RRPOEIMOM02CHEGGILG---015-ADA9BA5HRSSSTT
0: R
1: R 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 157: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/157.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 34 Array contents: RRPOEIMOM02CHEGGILG---015-ADA9BA5HRSSSTT
0: R
1: R 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5 33: H
![Page 158: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/158.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 33 Array contents: HRPOEIMOM02CHEGGILG---015-ADA9BA5RRSSSTT
0: H
1: R 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 159: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/159.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 33 Array contents: HRPOEIMOM02CHEGGILG---015-ADA9BA5RRSSSTT
0: H
1: R 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 160: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/160.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 33 Array contents: RHPOEIMOM02CHEGGILG---015-ADA9BA5RRSSSTT
0: R
1: H 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 161: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/161.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 33 Array contents: RHPOEIMOM02CHEGGILG---015-ADA9BA5RRSSSTT
0: R
1: H 2: P
3: O 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 162: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/162.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 33 Array contents: ROPHEIMOM02CHEGGILG---015-ADA9BA5RRSSSTT
0: R
1: O 2: P
3: H 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 163: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/163.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 33 Array contents: ROPHEIMOM02CHEGGILG---015-ADA9BA5RRSSSTT
0: R
1: O 2: P
3: H 4: E 5: I 6: M
7: O 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 164: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/164.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 33 Array contents: ROPOEIMHM02CHEGGILG---015-ADA9BA5RRSSSTT
0: R
1: O 2: P
3: O 4: E 5: I 6: M
7: H 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 165: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/165.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 16.Root and max will be swapped and heapify will recurse on the new node 16.
Heap size: 33 Array contents: ROPOEIMHM02CHEGGILG---015-ADA9BA5RRSSSTT
0: R
1: O 2: P
3: O 4: E 5: I 6: M
7: H 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: I 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 166: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/166.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 16.Heap size: 33 Array contents: ROPOEIMIM02CHEGGHLG---015-ADA9BA5RRSSSTT
0: R
1: O 2: P
3: O 4: E 5: I 6: M
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 167: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/167.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 16 and its children is node 16.No swap is necessary, heapify done.
Heap size: 33 Array contents: ROPOEIMIM02CHEGGHLG---015-ADA9BA5RRSSSTT
0: R
1: O 2: P
3: O 4: E 5: I 6: M
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 168: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/168.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 33 Array contents: ROPOEIMIM02CHEGGHLG---015-ADA9BA5RRSSSTT
0: R
1: O 2: P
3: O 4: E 5: I 6: M
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A 32: 5
![Page 169: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/169.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 32 Array contents: 5OPOEIMIM02CHEGGHLG---015-ADA9BARRRSSSTT
0: 5
1: O 2: P
3: O 4: E 5: I 6: M
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 170: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/170.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 32 Array contents: 5OPOEIMIM02CHEGGHLG---015-ADA9BARRRSSSTT
0: 5
1: O 2: P
3: O 4: E 5: I 6: M
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 171: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/171.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 32 Array contents: PO5OEIMIM02CHEGGHLG---015-ADA9BARRRSSSTT
0: P
1: O 2: 5
3: O 4: E 5: I 6: M
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 172: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/172.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 32 Array contents: PO5OEIMIM02CHEGGHLG---015-ADA9BARRRSSSTT
0: P
1: O 2: 5
3: O 4: E 5: I 6: M
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 173: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/173.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 32 Array contents: POMOEI5IM02CHEGGHLG---015-ADA9BARRRSSSTT
0: P
1: O 2: M
3: O 4: E 5: I 6: 5
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 174: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/174.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 14.Root and max will be swapped and heapify will recurse on the new node 14.
Heap size: 32 Array contents: POMOEI5IM02CHEGGHLG---015-ADA9BARRRSSSTT
0: P
1: O 2: M
3: O 4: E 5: I 6: 5
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: G
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 175: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/175.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 14.Heap size: 32 Array contents: POMOEIGIM02CHE5GHLG---015-ADA9BARRRSSSTT
0: P
1: O 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: 5
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 176: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/176.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 14 and its children is node 30.Root and max will be swapped and heapify will recurse on the new node 30.
Heap size: 32 Array contents: POMOEIGIM02CHE5GHLG---015-ADA9BARRRSSSTT
0: P
1: O 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: 5
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: B
31: A
![Page 177: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/177.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 30.Heap size: 32 Array contents: POMOEIGIM02CHEBGHLG---015-ADA95ARRRSSSTT
0: P
1: O 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
31: A
![Page 178: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/178.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 30 and its children is node 30.No swap is necessary, heapify done.
Heap size: 32 Array contents: POMOEIGIM02CHEBGHLG---015-ADA95ARRRSSSTT
0: P
1: O 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
31: A
![Page 179: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/179.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 32 Array contents: POMOEIGIM02CHEBGHLG---015-ADA95ARRRSSSTT
0: P
1: O 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
31: A
![Page 180: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/180.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 31 Array contents: AOMOEIGIM02CHEBGHLG---015-ADA95PRRRSSSTT
0: A
1: O 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 181: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/181.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 31 Array contents: AOMOEIGIM02CHEBGHLG---015-ADA95PRRRSSSTT
0: A
1: O 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 182: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/182.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 31 Array contents: OAMOEIGIM02CHEBGHLG---015-ADA95PRRRSSSTT
0: O
1: A 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 183: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/183.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 31 Array contents: OAMOEIGIM02CHEBGHLG---015-ADA95PRRRSSSTT
0: O
1: A 2: M
3: O 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 184: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/184.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 31 Array contents: OOMAEIGIM02CHEBGHLG---015-ADA95PRRRSSSTT
0: O
1: O 2: M
3: A 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 185: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/185.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 8.Root and max will be swapped and heapify will recurse on the new node 8.
Heap size: 31 Array contents: OOMAEIGIM02CHEBGHLG---015-ADA95PRRRSSSTT
0: O
1: O 2: M
3: A 4: E 5: I 6: G
7: I 8: M 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 186: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/186.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 8.Heap size: 31 Array contents: OOMMEIGIA02CHEBGHLG---015-ADA95PRRRSSSTT
0: O
1: O 2: M
3: M 4: E 5: I 6: G
7: I 8: A 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 187: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/187.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 8 and its children is node 17.Root and max will be swapped and heapify will recurse on the new node 17.
Heap size: 31 Array contents: OOMMEIGIA02CHEBGHLG---015-ADA95PRRRSSSTT
0: O
1: O 2: M
3: M 4: E 5: I 6: G
7: I 8: A 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: L 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 188: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/188.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 17.Heap size: 31 Array contents: OOMMEIGIL02CHEBGHAG---015-ADA95PRRRSSSTT
0: O
1: O 2: M
3: M 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 189: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/189.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 17 and its children is node 17.No swap is necessary, heapify done.
Heap size: 31 Array contents: OOMMEIGIL02CHEBGHAG---015-ADA95PRRRSSSTT
0: O
1: O 2: M
3: M 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 190: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/190.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 31 Array contents: OOMMEIGIL02CHEBGHAG---015-ADA95PRRRSSSTT
0: O
1: O 2: M
3: M 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9 30: 5
![Page 191: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/191.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 30 Array contents: 5OMMEIGIL02CHEBGHAG---015-ADA9OPRRRSSSTT
0: 5
1: O 2: M
3: M 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 192: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/192.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 30 Array contents: 5OMMEIGIL02CHEBGHAG---015-ADA9OPRRRSSSTT
0: 5
1: O 2: M
3: M 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 193: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/193.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 30 Array contents: O5MMEIGIL02CHEBGHAG---015-ADA9OPRRRSSSTT
0: O
1: 5 2: M
3: M 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 194: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/194.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 30 Array contents: O5MMEIGIL02CHEBGHAG---015-ADA9OPRRRSSSTT
0: O
1: 5 2: M
3: M 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 195: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/195.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 30 Array contents: OMM5EIGIL02CHEBGHAG---015-ADA9OPRRRSSSTT
0: O
1: M 2: M
3: 5 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 196: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/196.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 8.Root and max will be swapped and heapify will recurse on the new node 8.
Heap size: 30 Array contents: OMM5EIGIL02CHEBGHAG---015-ADA9OPRRRSSSTT
0: O
1: M 2: M
3: 5 4: E 5: I 6: G
7: I 8: L 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 197: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/197.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 8.Heap size: 30 Array contents: OMMLEIGI502CHEBGHAG---015-ADA9OPRRRSSSTT
0: O
1: M 2: M
3: L 4: E 5: I 6: G
7: I 8: 5 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 198: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/198.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 8 and its children is node 18.Root and max will be swapped and heapify will recurse on the new node 18.
Heap size: 30 Array contents: OMMLEIGI502CHEBGHAG---015-ADA9OPRRRSSSTT
0: O
1: M 2: M
3: L 4: E 5: I 6: G
7: I 8: 5 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: G 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 199: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/199.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 18.Heap size: 30 Array contents: OMMLEIGIG02CHEBGHA5---015-ADA9OPRRRSSSTT
0: O
1: M 2: M
3: L 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 200: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/200.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 18 and its children is node 18.No swap is necessary, heapify done.
Heap size: 30 Array contents: OMMLEIGIG02CHEBGHA5---015-ADA9OPRRRSSSTT
0: O
1: M 2: M
3: L 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 201: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/201.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 30 Array contents: OMMLEIGIG02CHEBGHA5---015-ADA9OPRRRSSSTT
0: O
1: M 2: M
3: L 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A 29: 9
![Page 202: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/202.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 29 Array contents: 9MMLEIGIG02CHEBGHA5---015-ADAOOPRRRSSSTT
0: 9
1: M 2: M
3: L 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 203: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/203.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 29 Array contents: 9MMLEIGIG02CHEBGHA5---015-ADAOOPRRRSSSTT
0: 9
1: M 2: M
3: L 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 204: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/204.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 29 Array contents: M9MLEIGIG02CHEBGHA5---015-ADAOOPRRRSSSTT
0: M
1: 9 2: M
3: L 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 205: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/205.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 29 Array contents: M9MLEIGIG02CHEBGHA5---015-ADAOOPRRRSSSTT
0: M
1: 9 2: M
3: L 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 206: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/206.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 29 Array contents: MLM9EIGIG02CHEBGHA5---015-ADAOOPRRRSSSTT
0: M
1: L 2: M
3: 9 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 207: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/207.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 29 Array contents: MLM9EIGIG02CHEBGHA5---015-ADAOOPRRRSSSTT
0: M
1: L 2: M
3: 9 4: E 5: I 6: G
7: I 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 208: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/208.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 29 Array contents: MLMIEIG9G02CHEBGHA5---015-ADAOOPRRRSSSTT
0: M
1: L 2: M
3: I 4: E 5: I 6: G
7: 9 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 209: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/209.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 16.Root and max will be swapped and heapify will recurse on the new node 16.
Heap size: 29 Array contents: MLMIEIG9G02CHEBGHA5---015-ADAOOPRRRSSSTT
0: M
1: L 2: M
3: I 4: E 5: I 6: G
7: 9 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: H 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 210: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/210.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 16.Heap size: 29 Array contents: MLMIEIGHG02CHEBG9A5---015-ADAOOPRRRSSSTT
0: M
1: L 2: M
3: I 4: E 5: I 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 211: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/211.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 16 and its children is node 16.No swap is necessary, heapify done.
Heap size: 29 Array contents: MLMIEIGHG02CHEBG9A5---015-ADAOOPRRRSSSTT
0: M
1: L 2: M
3: I 4: E 5: I 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 212: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/212.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 29 Array contents: MLMIEIGHG02CHEBG9A5---015-ADAOOPRRRSSSTT
0: M
1: L 2: M
3: I 4: E 5: I 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D 28: A
![Page 213: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/213.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 28 Array contents: ALMIEIGHG02CHEBG9A5---015-ADMOOPRRRSSSTT
0: A
1: L 2: M
3: I 4: E 5: I 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 214: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/214.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 28 Array contents: ALMIEIGHG02CHEBG9A5---015-ADMOOPRRRSSSTT
0: A
1: L 2: M
3: I 4: E 5: I 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 215: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/215.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 28 Array contents: MLAIEIGHG02CHEBG9A5---015-ADMOOPRRRSSSTT
0: M
1: L 2: A
3: I 4: E 5: I 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 216: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/216.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 5.Root and max will be swapped and heapify will recurse on the new node 5.
Heap size: 28 Array contents: MLAIEIGHG02CHEBG9A5---015-ADMOOPRRRSSSTT
0: M
1: L 2: A
3: I 4: E 5: I 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 217: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/217.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 5.Heap size: 28 Array contents: MLIIEAGHG02CHEBG9A5---015-ADMOOPRRRSSSTT
0: M
1: L 2: I
3: I 4: E 5: A 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 218: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/218.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 5 and its children is node 12.Root and max will be swapped and heapify will recurse on the new node 12.
Heap size: 28 Array contents: MLIIEAGHG02CHEBG9A5---015-ADMOOPRRRSSSTT
0: M
1: L 2: I
3: I 4: E 5: A 6: G
7: H 8: G 9: 0 10: 2 11: C 12: H 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 219: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/219.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 12.Heap size: 28 Array contents: MLIIEHGHG02CAEBG9A5---015-ADMOOPRRRSSSTT
0: M
1: L 2: I
3: I 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 220: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/220.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 12 and its children is node 12.No swap is necessary, heapify done.
Heap size: 28 Array contents: MLIIEHGHG02CAEBG9A5---015-ADMOOPRRRSSSTT
0: M
1: L 2: I
3: I 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 221: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/221.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 28 Array contents: MLIIEHGHG02CAEBG9A5---015-ADMOOPRRRSSSTT
0: M
1: L 2: I
3: I 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A 27: D
![Page 222: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/222.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 27 Array contents: DLIIEHGHG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: D
1: L 2: I
3: I 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 223: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/223.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 27 Array contents: DLIIEHGHG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: D
1: L 2: I
3: I 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 224: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/224.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 27 Array contents: LDIIEHGHG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: L
1: D 2: I
3: I 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 225: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/225.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 27 Array contents: LDIIEHGHG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: L
1: D 2: I
3: I 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 226: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/226.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 27 Array contents: LIIDEHGHG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: L
1: I 2: I
3: D 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 227: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/227.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 27 Array contents: LIIDEHGHG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: L
1: I 2: I
3: D 4: E 5: H 6: G
7: H 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 228: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/228.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 27 Array contents: LIIHEHGDG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: L
1: I 2: I
3: H 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 229: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/229.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 15.Root and max will be swapped and heapify will recurse on the new node 15.
Heap size: 27 Array contents: LIIHEHGDG02CAEBG9A5---015-AMMOOPRRRSSSTT
0: L
1: I 2: I
3: H 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: G 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 230: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/230.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15.Heap size: 27 Array contents: LIIHEHGGG02CAEBD9A5---015-AMMOOPRRRSSSTT
0: L
1: I 2: I
3: H 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 231: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/231.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 15.No swap is necessary, heapify done.
Heap size: 27 Array contents: LIIHEHGGG02CAEBD9A5---015-AMMOOPRRRSSSTT
0: L
1: I 2: I
3: H 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 232: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/232.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 27 Array contents: LIIHEHGGG02CAEBD9A5---015-AMMOOPRRRSSSTT
0: L
1: I 2: I
3: H 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: - 26: A
![Page 233: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/233.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 26 Array contents: AIIHEHGGG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: A
1: I 2: I
3: H 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 234: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/234.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 26 Array contents: AIIHEHGGG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: A
1: I 2: I
3: H 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 235: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/235.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 26 Array contents: IAIHEHGGG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: I
1: A 2: I
3: H 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 236: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/236.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 26 Array contents: IAIHEHGGG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: I
1: A 2: I
3: H 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 237: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/237.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 26 Array contents: IHIAEHGGG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: I
1: H 2: I
3: A 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 238: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/238.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 26 Array contents: IHIAEHGGG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: I
1: H 2: I
3: A 4: E 5: H 6: G
7: G 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 239: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/239.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 26 Array contents: IHIGEHGAG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: I
1: H 2: I
3: G 4: E 5: H 6: G
7: A 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 240: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/240.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 15.Root and max will be swapped and heapify will recurse on the new node 15.
Heap size: 26 Array contents: IHIGEHGAG02CAEBD9A5---015-LMMOOPRRRSSSTT
0: I
1: H 2: I
3: G 4: E 5: H 6: G
7: A 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: D 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 241: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/241.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15.Heap size: 26 Array contents: IHIGEHGDG02CAEBA9A5---015-LMMOOPRRRSSSTT
0: I
1: H 2: I
3: G 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 242: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/242.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 15.No swap is necessary, heapify done.
Heap size: 26 Array contents: IHIGEHGDG02CAEBA9A5---015-LMMOOPRRRSSSTT
0: I
1: H 2: I
3: G 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 243: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/243.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 26 Array contents: IHIGEHGDG02CAEBA9A5---015-LMMOOPRRRSSSTT
0: I
1: H 2: I
3: G 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5 25: -
![Page 244: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/244.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 25 Array contents: -HIGEHGDG02CAEBA9A5---015ILMMOOPRRRSSSTT
0: -
1: H 2: I
3: G 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 245: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/245.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 25 Array contents: -HIGEHGDG02CAEBA9A5---015ILMMOOPRRRSSSTT
0: -
1: H 2: I
3: G 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 246: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/246.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 25 Array contents: IH-GEHGDG02CAEBA9A5---015ILMMOOPRRRSSSTT
0: I
1: H 2: -
3: G 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 247: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/247.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 5.Root and max will be swapped and heapify will recurse on the new node 5.
Heap size: 25 Array contents: IH-GEHGDG02CAEBA9A5---015ILMMOOPRRRSSSTT
0: I
1: H 2: -
3: G 4: E 5: H 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 248: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/248.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 5.Heap size: 25 Array contents: IHHGE-GDG02CAEBA9A5---015ILMMOOPRRRSSSTT
0: I
1: H 2: H
3: G 4: E 5: - 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 249: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/249.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 5 and its children is node 11.Root and max will be swapped and heapify will recurse on the new node 11.
Heap size: 25 Array contents: IHHGE-GDG02CAEBA9A5---015ILMMOOPRRRSSSTT
0: I
1: H 2: H
3: G 4: E 5: - 6: G
7: D 8: G 9: 0 10: 2 11: C 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 250: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/250.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 11.Heap size: 25 Array contents: IHHGECGDG02-AEBA9A5---015ILMMOOPRRRSSSTT
0: I
1: H 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: - 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 251: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/251.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 11 and its children is node 24.Root and max will be swapped and heapify will recurse on the new node 24.
Heap size: 25 Array contents: IHHGECGDG02-AEBA9A5---015ILMMOOPRRRSSSTT
0: I
1: H 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: - 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: 5
![Page 252: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/252.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 24.Heap size: 25 Array contents: IHHGECGDG025AEBA9A5---01-ILMMOOPRRRSSSTT
0: I
1: H 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: -
![Page 253: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/253.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 24 and its children is node 24.No swap is necessary, heapify done.
Heap size: 25 Array contents: IHHGECGDG025AEBA9A5---01-ILMMOOPRRRSSSTT
0: I
1: H 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: -
![Page 254: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/254.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 25 Array contents: IHHGECGDG025AEBA9A5---01-ILMMOOPRRRSSSTT
0: I
1: H 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1 24: -
![Page 255: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/255.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 24 Array contents: -HHGECGDG025AEBA9A5---01IILMMOOPRRRSSSTT
0: -
1: H 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 256: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/256.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 24 Array contents: -HHGECGDG025AEBA9A5---01IILMMOOPRRRSSSTT
0: -
1: H 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 257: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/257.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 24 Array contents: H-HGECGDG025AEBA9A5---01IILMMOOPRRRSSSTT
0: H
1: - 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 258: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/258.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 24 Array contents: H-HGECGDG025AEBA9A5---01IILMMOOPRRRSSSTT
0: H
1: - 2: H
3: G 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 259: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/259.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 24 Array contents: HGH-ECGDG025AEBA9A5---01IILMMOOPRRRSSSTT
0: H
1: G 2: H
3: - 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 260: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/260.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 8.Root and max will be swapped and heapify will recurse on the new node 8.
Heap size: 24 Array contents: HGH-ECGDG025AEBA9A5---01IILMMOOPRRRSSSTT
0: H
1: G 2: H
3: - 4: E 5: C 6: G
7: D 8: G 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 261: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/261.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 8.Heap size: 24 Array contents: HGHGECGD-025AEBA9A5---01IILMMOOPRRRSSSTT
0: H
1: G 2: H
3: G 4: E 5: C 6: G
7: D 8: - 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 262: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/262.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 8 and its children is node 17.Root and max will be swapped and heapify will recurse on the new node 17.
Heap size: 24 Array contents: HGHGECGD-025AEBA9A5---01IILMMOOPRRRSSSTT
0: H
1: G 2: H
3: G 4: E 5: C 6: G
7: D 8: - 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: A 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 263: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/263.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 17.Heap size: 24 Array contents: HGHGECGDA025AEBA9-5---01IILMMOOPRRRSSSTT
0: H
1: G 2: H
3: G 4: E 5: C 6: G
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 264: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/264.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 17 and its children is node 17.No swap is necessary, heapify done.
Heap size: 24 Array contents: HGHGECGDA025AEBA9-5---01IILMMOOPRRRSSSTT
0: H
1: G 2: H
3: G 4: E 5: C 6: G
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 265: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/265.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 24 Array contents: HGHGECGDA025AEBA9-5---01IILMMOOPRRRSSSTT
0: H
1: G 2: H
3: G 4: E 5: C 6: G
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0 23: 1
![Page 266: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/266.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 23 Array contents: 1GHGECGDA025AEBA9-5---0HIILMMOOPRRRSSSTT
0: 1
1: G 2: H
3: G 4: E 5: C 6: G
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 267: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/267.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 23 Array contents: 1GHGECGDA025AEBA9-5---0HIILMMOOPRRRSSSTT
0: 1
1: G 2: H
3: G 4: E 5: C 6: G
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 268: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/268.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 23 Array contents: HG1GECGDA025AEBA9-5---0HIILMMOOPRRRSSSTT
0: H
1: G 2: 1
3: G 4: E 5: C 6: G
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 269: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/269.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 23 Array contents: HG1GECGDA025AEBA9-5---0HIILMMOOPRRRSSSTT
0: H
1: G 2: 1
3: G 4: E 5: C 6: G
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 270: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/270.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 23 Array contents: HGGGEC1DA025AEBA9-5---0HIILMMOOPRRRSSSTT
0: H
1: G 2: G
3: G 4: E 5: C 6: 1
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 271: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/271.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 13.Root and max will be swapped and heapify will recurse on the new node 13.
Heap size: 23 Array contents: HGGGEC1DA025AEBA9-5---0HIILMMOOPRRRSSSTT
0: H
1: G 2: G
3: G 4: E 5: C 6: 1
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: E 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 272: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/272.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 13.Heap size: 23 Array contents: HGGGECEDA025A1BA9-5---0HIILMMOOPRRRSSSTT
0: H
1: G 2: G
3: G 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 273: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/273.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 13 and its children is node 13.No swap is necessary, heapify done.
Heap size: 23 Array contents: HGGGECEDA025A1BA9-5---0HIILMMOOPRRRSSSTT
0: H
1: G 2: G
3: G 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 274: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/274.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 23 Array contents: HGGGECEDA025A1BA9-5---0HIILMMOOPRRRSSSTT
0: H
1: G 2: G
3: G 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: - 22: 0
![Page 275: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/275.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 22 Array contents: 0GGGECEDA025A1BA9-5---HHIILMMOOPRRRSSSTT
0: 0
1: G 2: G
3: G 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 276: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/276.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 22 Array contents: 0GGGECEDA025A1BA9-5---HHIILMMOOPRRRSSSTT
0: 0
1: G 2: G
3: G 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 277: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/277.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 22 Array contents: G0GGECEDA025A1BA9-5---HHIILMMOOPRRRSSSTT
0: G
1: 0 2: G
3: G 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 278: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/278.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 22 Array contents: G0GGECEDA025A1BA9-5---HHIILMMOOPRRRSSSTT
0: G
1: 0 2: G
3: G 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 279: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/279.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 22 Array contents: GGG0ECEDA025A1BA9-5---HHIILMMOOPRRRSSSTT
0: G
1: G 2: G
3: 0 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 280: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/280.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 22 Array contents: GGG0ECEDA025A1BA9-5---HHIILMMOOPRRRSSSTT
0: G
1: G 2: G
3: 0 4: E 5: C 6: E
7: D 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 281: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/281.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 22 Array contents: GGGDECE0A025A1BA9-5---HHIILMMOOPRRRSSSTT
0: G
1: G 2: G
3: D 4: E 5: C 6: E
7: 0 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 282: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/282.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 15.Root and max will be swapped and heapify will recurse on the new node 15.
Heap size: 22 Array contents: GGGDECE0A025A1BA9-5---HHIILMMOOPRRRSSSTT
0: G
1: G 2: G
3: D 4: E 5: C 6: E
7: 0 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: A 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 283: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/283.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 15.Heap size: 22 Array contents: GGGDECEAA025A1B09-5---HHIILMMOOPRRRSSSTT
0: G
1: G 2: G
3: D 4: E 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 284: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/284.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 15 and its children is node 15.No swap is necessary, heapify done.
Heap size: 22 Array contents: GGGDECEAA025A1B09-5---HHIILMMOOPRRRSSSTT
0: G
1: G 2: G
3: D 4: E 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 285: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/285.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 22 Array contents: GGGDECEAA025A1B09-5---HHIILMMOOPRRRSSSTT
0: G
1: G 2: G
3: D 4: E 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: - 21: -
![Page 286: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/286.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 21 Array contents: -GGDECEAA025A1B09-5--GHHIILMMOOPRRRSSSTT
0: -
1: G 2: G
3: D 4: E 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 287: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/287.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 21 Array contents: -GGDECEAA025A1B09-5--GHHIILMMOOPRRRSSSTT
0: -
1: G 2: G
3: D 4: E 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 288: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/288.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 21 Array contents: G-GDECEAA025A1B09-5--GHHIILMMOOPRRRSSSTT
0: G
1: - 2: G
3: D 4: E 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 289: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/289.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 4.Root and max will be swapped and heapify will recurse on the new node 4.
Heap size: 21 Array contents: G-GDECEAA025A1B09-5--GHHIILMMOOPRRRSSSTT
0: G
1: - 2: G
3: D 4: E 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 290: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/290.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 4.Heap size: 21 Array contents: GEGD-CEAA025A1B09-5--GHHIILMMOOPRRRSSSTT
0: G
1: E 2: G
3: D 4: - 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 291: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/291.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 4 and its children is node 10.Root and max will be swapped and heapify will recurse on the new node 10.
Heap size: 21 Array contents: GEGD-CEAA025A1B09-5--GHHIILMMOOPRRRSSSTT
0: G
1: E 2: G
3: D 4: - 5: C 6: E
7: A 8: A 9: 0 10: 2 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 292: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/292.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 10.Heap size: 21 Array contents: GEGD2CEAA0-5A1B09-5--GHHIILMMOOPRRRSSSTT
0: G
1: E 2: G
3: D 4: 2 5: C 6: E
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 293: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/293.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 10 and its children is node 10.No swap is necessary, heapify done.
Heap size: 21 Array contents: GEGD2CEAA0-5A1B09-5--GHHIILMMOOPRRRSSSTT
0: G
1: E 2: G
3: D 4: 2 5: C 6: E
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 294: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/294.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 21 Array contents: GEGD2CEAA0-5A1B09-5--GHHIILMMOOPRRRSSSTT
0: G
1: E 2: G
3: D 4: 2 5: C 6: E
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: - 20: -
![Page 295: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/295.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 20 Array contents: -EGD2CEAA0-5A1B09-5-GGHHIILMMOOPRRRSSSTT
0: -
1: E 2: G
3: D 4: 2 5: C 6: E
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: -
![Page 296: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/296.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 20 Array contents: -EGD2CEAA0-5A1B09-5-GGHHIILMMOOPRRRSSSTT
0: -
1: E 2: G
3: D 4: 2 5: C 6: E
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: -
![Page 297: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/297.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 20 Array contents: GE-D2CEAA0-5A1B09-5-GGHHIILMMOOPRRRSSSTT
0: G
1: E 2: -
3: D 4: 2 5: C 6: E
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: -
![Page 298: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/298.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 20 Array contents: GE-D2CEAA0-5A1B09-5-GGHHIILMMOOPRRRSSSTT
0: G
1: E 2: -
3: D 4: 2 5: C 6: E
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: -
![Page 299: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/299.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 20 Array contents: GEED2C-AA0-5A1B09-5-GGHHIILMMOOPRRRSSSTT
0: G
1: E 2: E
3: D 4: 2 5: C 6: -
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: -
![Page 300: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/300.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 14.Root and max will be swapped and heapify will recurse on the new node 14.
Heap size: 20 Array contents: GEED2C-AA0-5A1B09-5-GGHHIILMMOOPRRRSSSTT
0: G
1: E 2: E
3: D 4: 2 5: C 6: -
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: B
15: 0 16: 9 17: - 18: 5 19: -
![Page 301: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/301.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 14.Heap size: 20 Array contents: GEED2CBAA0-5A1-09-5-GGHHIILMMOOPRRRSSSTT
0: G
1: E 2: E
3: D 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5 19: -
![Page 302: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/302.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 14 and its children is node 14.No swap is necessary, heapify done.
Heap size: 20 Array contents: GEED2CBAA0-5A1-09-5-GGHHIILMMOOPRRRSSSTT
0: G
1: E 2: E
3: D 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5 19: -
![Page 303: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/303.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 20 Array contents: GEED2CBAA0-5A1-09-5-GGHHIILMMOOPRRRSSSTT
0: G
1: E 2: E
3: D 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5 19: -
![Page 304: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/304.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 19 Array contents: -EED2CBAA0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: -
1: E 2: E
3: D 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 305: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/305.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 19 Array contents: -EED2CBAA0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: -
1: E 2: E
3: D 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 306: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/306.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 19 Array contents: E-ED2CBAA0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: E
1: - 2: E
3: D 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 307: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/307.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 19 Array contents: E-ED2CBAA0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: E
1: - 2: E
3: D 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 308: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/308.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 19 Array contents: EDE-2CBAA0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: E
3: - 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 309: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/309.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 19 Array contents: EDE-2CBAA0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: E
3: - 4: 2 5: C 6: B
7: A 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 310: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/310.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 19 Array contents: EDEA2CB-A0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: E
3: A 4: 2 5: C 6: B
7: - 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 311: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/311.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 16.Root and max will be swapped and heapify will recurse on the new node 16.
Heap size: 19 Array contents: EDEA2CB-A0-5A1-09-5GGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: E
3: A 4: 2 5: C 6: B
7: - 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: 9 17: - 18: 5
![Page 312: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/312.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 16.Heap size: 19 Array contents: EDEA2CB9A0-5A1-0--5GGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: E
3: A 4: 2 5: C 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: - 18: 5
![Page 313: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/313.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 16 and its children is node 16.No swap is necessary, heapify done.
Heap size: 19 Array contents: EDEA2CB9A0-5A1-0--5GGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: E
3: A 4: 2 5: C 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: - 18: 5
![Page 314: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/314.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 19 Array contents: EDEA2CB9A0-5A1-0--5GGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: E
3: A 4: 2 5: C 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: - 18: 5
![Page 315: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/315.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 18 Array contents: 5DEA2CB9A0-5A1-0--EGGGHHIILMMOOPRRRSSSTT
0: 5
1: D 2: E
3: A 4: 2 5: C 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: -
![Page 316: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/316.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 18 Array contents: 5DEA2CB9A0-5A1-0--EGGGHHIILMMOOPRRRSSSTT
0: 5
1: D 2: E
3: A 4: 2 5: C 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: -
![Page 317: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/317.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 18 Array contents: ED5A2CB9A0-5A1-0--EGGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: 5
3: A 4: 2 5: C 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: -
![Page 318: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/318.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 5.Root and max will be swapped and heapify will recurse on the new node 5.
Heap size: 18 Array contents: ED5A2CB9A0-5A1-0--EGGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: 5
3: A 4: 2 5: C 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: -
![Page 319: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/319.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 5.Heap size: 18 Array contents: EDCA25B9A0-5A1-0--EGGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: C
3: A 4: 2 5: 5 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: -
![Page 320: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/320.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 5 and its children is node 12.Root and max will be swapped and heapify will recurse on the new node 12.
Heap size: 18 Array contents: EDCA25B9A0-5A1-0--EGGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: C
3: A 4: 2 5: 5 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: A 13: 1 14: -
15: 0 16: - 17: -
![Page 321: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/321.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 12.Heap size: 18 Array contents: EDCA2AB9A0-551-0--EGGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: C
3: A 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: - 17: -
![Page 322: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/322.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 12 and its children is node 12.No swap is necessary, heapify done.
Heap size: 18 Array contents: EDCA2AB9A0-551-0--EGGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: C
3: A 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: - 17: -
![Page 323: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/323.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 18 Array contents: EDCA2AB9A0-551-0--EGGGHHIILMMOOPRRRSSSTT
0: E
1: D 2: C
3: A 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: - 17: -
![Page 324: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/324.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 17 Array contents: -DCA2AB9A0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: -
1: D 2: C
3: A 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 325: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/325.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 17 Array contents: -DCA2AB9A0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: -
1: D 2: C
3: A 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 326: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/326.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 17 Array contents: D-CA2AB9A0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: D
1: - 2: C
3: A 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 327: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/327.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 17 Array contents: D-CA2AB9A0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: D
1: - 2: C
3: A 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 328: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/328.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 17 Array contents: DAC-2AB9A0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: D
1: A 2: C
3: - 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 329: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/329.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 8.Root and max will be swapped and heapify will recurse on the new node 8.
Heap size: 17 Array contents: DAC-2AB9A0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: D
1: A 2: C
3: - 4: 2 5: A 6: B
7: 9 8: A 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 330: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/330.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 8.Heap size: 17 Array contents: DACA2AB9-0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: D
1: A 2: C
3: A 4: 2 5: A 6: B
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 331: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/331.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 8 and its children is node 8.No swap is necessary, heapify done.
Heap size: 17 Array contents: DACA2AB9-0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: D
1: A 2: C
3: A 4: 2 5: A 6: B
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 332: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/332.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 17 Array contents: DACA2AB9-0-551-0-EEGGGHHIILMMOOPRRRSSSTT
0: D
1: A 2: C
3: A 4: 2 5: A 6: B
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0 16: -
![Page 333: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/333.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 16 Array contents: -ACA2AB9-0-551-0DEEGGGHHIILMMOOPRRRSSSTT
0: -
1: A 2: C
3: A 4: 2 5: A 6: B
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0
![Page 334: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/334.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 16 Array contents: -ACA2AB9-0-551-0DEEGGGHHIILMMOOPRRRSSSTT
0: -
1: A 2: C
3: A 4: 2 5: A 6: B
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0
![Page 335: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/335.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 16 Array contents: CA-A2AB9-0-551-0DEEGGGHHIILMMOOPRRRSSSTT
0: C
1: A 2: -
3: A 4: 2 5: A 6: B
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0
![Page 336: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/336.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 16 Array contents: CA-A2AB9-0-551-0DEEGGGHHIILMMOOPRRRSSSTT
0: C
1: A 2: -
3: A 4: 2 5: A 6: B
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0
![Page 337: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/337.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 16 Array contents: CABA2A-9-0-551-0DEEGGGHHIILMMOOPRRRSSSTT
0: C
1: A 2: B
3: A 4: 2 5: A 6: -
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0
![Page 338: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/338.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 13.Root and max will be swapped and heapify will recurse on the new node 13.
Heap size: 16 Array contents: CABA2A-9-0-551-0DEEGGGHHIILMMOOPRRRSSSTT
0: C
1: A 2: B
3: A 4: 2 5: A 6: -
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: 1 14: -
15: 0
![Page 339: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/339.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 13.Heap size: 16 Array contents: CABA2A19-0-55--0DEEGGGHHIILMMOOPRRRSSSTT
0: C
1: A 2: B
3: A 4: 2 5: A 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
15: 0
![Page 340: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/340.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 13 and its children is node 13.No swap is necessary, heapify done.
Heap size: 16 Array contents: CABA2A19-0-55--0DEEGGGHHIILMMOOPRRRSSSTT
0: C
1: A 2: B
3: A 4: 2 5: A 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
15: 0
![Page 341: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/341.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 16 Array contents: CABA2A19-0-55--0DEEGGGHHIILMMOOPRRRSSSTT
0: C
1: A 2: B
3: A 4: 2 5: A 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
15: 0
![Page 342: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/342.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 15 Array contents: 0ABA2A19-0-55--CDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: A 2: B
3: A 4: 2 5: A 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
![Page 343: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/343.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 15 Array contents: 0ABA2A19-0-55--CDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: A 2: B
3: A 4: 2 5: A 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
![Page 344: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/344.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 15 Array contents: BA0A2A19-0-55--CDEEGGGHHIILMMOOPRRRSSSTT
0: B
1: A 2: 0
3: A 4: 2 5: A 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
![Page 345: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/345.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 5.Root and max will be swapped and heapify will recurse on the new node 5.
Heap size: 15 Array contents: BA0A2A19-0-55--CDEEGGGHHIILMMOOPRRRSSSTT
0: B
1: A 2: 0
3: A 4: 2 5: A 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
![Page 346: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/346.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 5.Heap size: 15 Array contents: BAAA2019-0-55--CDEEGGGHHIILMMOOPRRRSSSTT
0: B
1: A 2: A
3: A 4: 2 5: 0 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
![Page 347: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/347.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 5 and its children is node 11.Root and max will be swapped and heapify will recurse on the new node 11.
Heap size: 15 Array contents: BAAA2019-0-55--CDEEGGGHHIILMMOOPRRRSSSTT
0: B
1: A 2: A
3: A 4: 2 5: 0 6: 1
7: 9 8: - 9: 0 10: - 11: 5 12: 5 13: - 14: -
![Page 348: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/348.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 11.Heap size: 15 Array contents: BAAA2519-0-05--CDEEGGGHHIILMMOOPRRRSSSTT
0: B
1: A 2: A
3: A 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: - 14: -
![Page 349: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/349.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 11 and its children is node 11.No swap is necessary, heapify done.
Heap size: 15 Array contents: BAAA2519-0-05--CDEEGGGHHIILMMOOPRRRSSSTT
0: B
1: A 2: A
3: A 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: - 14: -
![Page 350: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/350.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 15 Array contents: BAAA2519-0-05--CDEEGGGHHIILMMOOPRRRSSSTT
0: B
1: A 2: A
3: A 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: - 14: -
![Page 351: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/351.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 14 Array contents: -AAA2519-0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: A 2: A
3: A 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 352: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/352.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 14 Array contents: -AAA2519-0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: A 2: A
3: A 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 353: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/353.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 14 Array contents: A-AA2519-0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: - 2: A
3: A 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 354: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/354.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 14 Array contents: A-AA2519-0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: - 2: A
3: A 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 355: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/355.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 14 Array contents: AAA-2519-0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: A 2: A
3: - 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 356: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/356.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 7.Root and max will be swapped and heapify will recurse on the new node 7.
Heap size: 14 Array contents: AAA-2519-0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: A 2: A
3: - 4: 2 5: 5 6: 1
7: 9 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 357: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/357.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 7.Heap size: 14 Array contents: AAA9251--0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: A 2: A
3: 9 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 358: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/358.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 7 and its children is node 7.No swap is necessary, heapify done.
Heap size: 14 Array contents: AAA9251--0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: A 2: A
3: 9 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 359: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/359.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 14 Array contents: AAA9251--0-05-BCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: A 2: A
3: 9 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5 13: -
![Page 360: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/360.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 13 Array contents: -AA9251--0-05ABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: A 2: A
3: 9 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5
![Page 361: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/361.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 13 Array contents: -AA9251--0-05ABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: A 2: A
3: 9 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5
![Page 362: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/362.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 13 Array contents: A-A9251--0-05ABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: - 2: A
3: 9 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5
![Page 363: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/363.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 3.Root and max will be swapped and heapify will recurse on the new node 3.
Heap size: 13 Array contents: A-A9251--0-05ABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: - 2: A
3: 9 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5
![Page 364: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/364.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 3.Heap size: 13 Array contents: A9A-251--0-05ABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: 9 2: A
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5
![Page 365: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/365.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 3 and its children is node 3.No swap is necessary, heapify done.
Heap size: 13 Array contents: A9A-251--0-05ABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: 9 2: A
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5
![Page 366: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/366.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 13 Array contents: A9A-251--0-05ABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: 9 2: A
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0 12: 5
![Page 367: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/367.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 12 Array contents: 59A-251--0-0AABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 9 2: A
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0
![Page 368: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/368.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 12 Array contents: 59A-251--0-0AABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 9 2: A
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0
![Page 369: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/369.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 12 Array contents: A95-251--0-0AABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: 9 2: 5
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0
![Page 370: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/370.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 2.No swap is necessary, heapify done.
Heap size: 12 Array contents: A95-251--0-0AABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: 9 2: 5
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0
![Page 371: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/371.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 12 Array contents: A95-251--0-0AABCDEEGGGHHIILMMOOPRRRSSSTT
0: A
1: 9 2: 5
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: - 11: 0
![Page 372: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/372.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 11 Array contents: 095-251--0-AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: 9 2: 5
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: -
![Page 373: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/373.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 11 Array contents: 095-251--0-AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: 9 2: 5
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: -
![Page 374: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/374.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 11 Array contents: 905-251--0-AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 9
1: 0 2: 5
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: -
![Page 375: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/375.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 4.Root and max will be swapped and heapify will recurse on the new node 4.
Heap size: 11 Array contents: 905-251--0-AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 9
1: 0 2: 5
3: - 4: 2 5: 5 6: 1
7: - 8: - 9: 0 10: -
![Page 376: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/376.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 4.Heap size: 11 Array contents: 925-051--0-AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 9
1: 2 2: 5
3: - 4: 0 5: 5 6: 1
7: - 8: - 9: 0 10: -
![Page 377: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/377.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 4 and its children is node 4.No swap is necessary, heapify done.
Heap size: 11 Array contents: 925-051--0-AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 9
1: 2 2: 5
3: - 4: 0 5: 5 6: 1
7: - 8: - 9: 0 10: -
![Page 378: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/378.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 11 Array contents: 925-051--0-AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 9
1: 2 2: 5
3: - 4: 0 5: 5 6: 1
7: - 8: - 9: 0 10: -
![Page 379: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/379.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 10 Array contents: -25-051--09AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 2 2: 5
3: - 4: 0 5: 5 6: 1
7: - 8: - 9: 0
![Page 380: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/380.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 10 Array contents: -25-051--09AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 2 2: 5
3: - 4: 0 5: 5 6: 1
7: - 8: - 9: 0
![Page 381: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/381.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 10 Array contents: 52--051--09AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: -
3: - 4: 0 5: 5 6: 1
7: - 8: - 9: 0
![Page 382: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/382.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 5.Root and max will be swapped and heapify will recurse on the new node 5.
Heap size: 10 Array contents: 52--051--09AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: -
3: - 4: 0 5: 5 6: 1
7: - 8: - 9: 0
![Page 383: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/383.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 5.Heap size: 10 Array contents: 525-0-1--09AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 5
3: - 4: 0 5: - 6: 1
7: - 8: - 9: 0
![Page 384: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/384.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 5 and its children is node 5.No swap is necessary, heapify done.
Heap size: 10 Array contents: 525-0-1--09AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 5
3: - 4: 0 5: - 6: 1
7: - 8: - 9: 0
![Page 385: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/385.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 10 Array contents: 525-0-1--09AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 5
3: - 4: 0 5: - 6: 1
7: - 8: - 9: 0
![Page 386: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/386.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 9 Array contents: 025-0-1--59AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: 2 2: 5
3: - 4: 0 5: - 6: 1
7: - 8: -
![Page 387: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/387.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 9 Array contents: 025-0-1--59AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: 2 2: 5
3: - 4: 0 5: - 6: 1
7: - 8: -
![Page 388: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/388.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 9 Array contents: 520-0-1--59AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 0
3: - 4: 0 5: - 6: 1
7: - 8: -
![Page 389: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/389.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 9 Array contents: 520-0-1--59AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 0
3: - 4: 0 5: - 6: 1
7: - 8: -
![Page 390: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/390.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 9 Array contents: 521-0-0--59AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 1
3: - 4: 0 5: - 6: 0
7: - 8: -
![Page 391: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/391.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 6.No swap is necessary, heapify done.
Heap size: 9 Array contents: 521-0-0--59AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 1
3: - 4: 0 5: - 6: 0
7: - 8: -
![Page 392: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/392.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 9 Array contents: 521-0-0--59AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 5
1: 2 2: 1
3: - 4: 0 5: - 6: 0
7: - 8: -
![Page 393: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/393.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 8 Array contents: -21-0-0-559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 2 2: 1
3: - 4: 0 5: - 6: 0
7: -
![Page 394: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/394.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 8 Array contents: -21-0-0-559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 2 2: 1
3: - 4: 0 5: - 6: 0
7: -
![Page 395: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/395.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 8 Array contents: 2-1-0-0-559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 2
1: - 2: 1
3: - 4: 0 5: - 6: 0
7: -
![Page 396: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/396.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 4.Root and max will be swapped and heapify will recurse on the new node 4.
Heap size: 8 Array contents: 2-1-0-0-559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 2
1: - 2: 1
3: - 4: 0 5: - 6: 0
7: -
![Page 397: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/397.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 4.Heap size: 8 Array contents: 201---0-559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 2
1: 0 2: 1
3: - 4: - 5: - 6: 0
7: -
![Page 398: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/398.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 4 and its children is node 4.No swap is necessary, heapify done.
Heap size: 8 Array contents: 201---0-559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 2
1: 0 2: 1
3: - 4: - 5: - 6: 0
7: -
![Page 399: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/399.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 8 Array contents: 201---0-559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 2
1: 0 2: 1
3: - 4: - 5: - 6: 0
7: -
![Page 400: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/400.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 7 Array contents: -01---02559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 0 2: 1
3: - 4: - 5: - 6: 0
![Page 401: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/401.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 7 Array contents: -01---02559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 0 2: 1
3: - 4: - 5: - 6: 0
![Page 402: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/402.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 7 Array contents: 10----02559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 1
1: 0 2: -
3: - 4: - 5: - 6: 0
![Page 403: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/403.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 6.Root and max will be swapped and heapify will recurse on the new node 6.
Heap size: 7 Array contents: 10----02559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 1
1: 0 2: -
3: - 4: - 5: - 6: 0
![Page 404: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/404.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 6.Heap size: 7 Array contents: 100----2559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 1
1: 0 2: 0
3: - 4: - 5: - 6: -
![Page 405: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/405.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 6 and its children is node 6.No swap is necessary, heapify done.
Heap size: 7 Array contents: 100----2559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 1
1: 0 2: 0
3: - 4: - 5: - 6: -
![Page 406: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/406.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 7 Array contents: 100----2559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 1
1: 0 2: 0
3: - 4: - 5: - 6: -
![Page 407: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/407.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 6 Array contents: -00---12559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 0 2: 0
3: - 4: - 5: -
![Page 408: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/408.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 1.Root and max will be swapped and heapify will recurse on the new node 1.
Heap size: 6 Array contents: -00---12559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: 0 2: 0
3: - 4: - 5: -
![Page 409: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/409.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 1.Heap size: 6 Array contents: 0-0---12559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: - 2: 0
3: - 4: - 5: -
![Page 410: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/410.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 1 and its children is node 1.No swap is necessary, heapify done.
Heap size: 6 Array contents: 0-0---12559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: - 2: 0
3: - 4: - 5: -
![Page 411: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/411.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 6 Array contents: 0-0---12559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: - 2: 0
3: - 4: - 5: -
![Page 412: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/412.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 5 Array contents: --0--012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: 0
3: - 4: -
![Page 413: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/413.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 2.Root and max will be swapped and heapify will recurse on the new node 2.
Heap size: 5 Array contents: --0--012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: 0
3: - 4: -
![Page 414: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/414.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 2.Heap size: 5 Array contents: 0----012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: - 2: -
3: - 4: -
![Page 415: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/415.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 2 and its children is node 2.No swap is necessary, heapify done.
Heap size: 5 Array contents: 0----012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: - 2: -
3: - 4: -
![Page 416: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/416.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 5 Array contents: 0----012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: 0
1: - 2: -
3: - 4: -
![Page 417: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/417.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 4 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: -
3: -
![Page 418: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/418.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 0.No swap is necessary, heapify done.
Heap size: 4 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: -
3: -
![Page 419: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/419.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 4 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: -
3: -
![Page 420: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/420.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 3 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: -
![Page 421: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/421.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 0.No swap is necessary, heapify done.
Heap size: 3 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: -
![Page 422: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/422.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 3 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: - 2: -
![Page 423: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/423.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 2 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: -
![Page 424: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/424.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 0.No swap is necessary, heapify done.
Heap size: 2 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: -
![Page 425: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/425.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Removing root and moving it outside of the heap.The last element takes its place and the heap size is decremented.
Heap size: 2 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
1: -
![Page 426: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/426.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Running heapify on node 0 as part of the repair heap (heap-down) process.Heap size: 1 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
![Page 427: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/427.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Largest of node 0 and its children is node 0.No swap is necessary, heapify done.
Heap size: 1 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT
0: -
![Page 428: Heap size: 40 Array contents: ALGORITHMS-CAMBRIDGE-2015-HEAPSORT … · 2015-02-02 · Initially the array may not satisfy the heap property. The heap will be built up by calling](https://reader034.fdocuments.us/reader034/viewer/2022050103/5f41dd83ecc3aa10a805de04/html5/thumbnails/428.jpg)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Heap empty, sorting complete.Heap size: 0 Array contents: ----0012559AAABCDEEGGGHHIILMMOOPRRRSSSTT