My first Magazine pemrograman-kompetitif-dasar | Page 54
5 Divide and Conquer
5 2
5
2
7 6
7
6
1 8
1
8
9 3
9
3
Gambar 5.4: Langkah 3: Array yang kita miliki masih lebih dari 1 elemen, bagi lagi masing-masing
menjadi dua.
Kini kita memiliki kumpulan array yang dengan panjang satu. Secara deļ¬nisi, masing-masing
array tersebut telah terurut. Selanjutnya, kita masuk ke tahap combine untuk menyatukan
kembali masing-masing array menjadi satu array utuh yang terurut. Hal ini dilakukan dengan
menggabungkan 2 array yang bersebelahan dan memastikan array gabungannya tetap terurut.
5
2
7
6
1
8
9
3
Gambar 5.5: Langkah 4: Kumpulan array dengan panjang satu yang masing-masing telah terurut.
5
2
2 5
7
6
6 7
1
1 8
8
9
3
3 9
Gambar 5.6: Langkah 5: Gabungkan 2 array yang bersebelahan. Pastikan array gabungan tetap
terurut.
2 5
6 7
2 5 6 7
1 8
3 9
1 3 8 9
Gambar 5.7: Langkah 6: Gabungkan lagi 2 array yang bersebelahan. Pastikan array gabungan
tetap terurut.
2 5 6 7
1 3 8 9
1 2 3 5 6 7 8 9
Gambar 5.8: Langkah 7: Gabungkan lagi dan akhirnya didapatkan array awal yang telah terurut.
44