E N D
Selection Sort Metodepengurutaninidisebutpengurutanmaksimum / minimum karenadidasarkanpadapemilihanelemenmaksimumatau minimum kemudianmempertukarkanelemenmaksimum/minimum tersebutdenganelementerujunglarik (elemenujungkiriatauelemenujungkanan). Selanjutnyaelementerujungitukita “isolasi” dantidakdiikutsertakanpada proses selanjutnya. Karena proses utamadalampengurutanadalahpemilihanelemenmaksimum / minimum, makametodeinidisebutmetodepemilihan (selection sort).
Contoh Selection sort 6 buahelemendibawahiniakandiurutkanmenaik (ascending) • Langkah 1: • Carielemenmaksimum di dalamlarik L[1..6] maks = L[5] = 76 • Tukarmaksdengan L[N],hasilakhirlangkah 1:
Langkah 2: (berdasarkansusunanlarikhasillangkah 1) Carielemenmaksimumdidalamlarik L[1..5] maks = L[1] = 29 Tukarmaksdengan L[5],hasilakhirlangkah 2: Langkah 3: (berdasarkansusunanlarikhasillangkah 2) Carielemenmaksimumdidalamlarik L[1..4] maks = L[2] = 27 Tukarmaksdengan L[4],hasilakhirlangkah 3:
Langkah 4: (berdasarkansusunanlarikhasillangkah 3) Carielemenmaksimumdidalamlarik L[1..3] maks = L[1] = 21 Tukarmaksdengan L[3],hasilakhirlangkah 4: Langkah 5: (berdasarkansusunanlarikhasillangkah 4) Carielemenmaksimumdidalamlarik L[1..2] maks = L[1] = 10 Tukarmaksdengan L[2],hasilakhirlangkah 5: Selesai. Lariksudahterurutkan !
UntukalgoritmaPengurutan Minimum caranyasamapersisdenganmaksimumhanyasaja yang ditukaradalahnilai yang minimum bukanmaksimum.
Dibandingkandenganpengurutangelembung (bubble sort) pengurutandenganmetode selection sort (maksimum/minimum) inimemilikikinerja yang lebihbaik. Operasinyapertukaranhanyasekalisajadilakukanpadasetiaplangkahsehinggawaktupengurutandapatlebihditekan. Metodeinidirekomendasikanuntukdipakai.
Insertion Sort Pengurutansisip (insertion sort) adalahmetodepengurutandengancaramenyisipkanelemenlarikpadaposisi yang tepat. Pencarianposisi yang tepatdilakukandenganpencarianberuntun. Selamapencarianposisi yang tepatdilakukanpergeseranelemenlarik.
Contoh Insertion Sort 6 buahelemendibawahiniakandiurutkanmenaik (ascending) Langkah 1: Elemen L[1] dianggapsudahterurut Langkah 2: (berdasarkansusunanlarikpadalangkah 1) Cariposisi yang tepatuntuk L[2] pada L[1..2],diperoleh :
Langkah 3: (berdasarkansusunanlarikpadalangkah 2) Cariposisi yang tepatuntuk L[3] pada L[1..3],diperoleh : Langkah 4: (berdasarkansusunanlarikpadalangkah 3) Cariposisi yang tepatuntuk L[4] pada L[1..4],diperoleh :
Langkah 5: (berdasarkansusunanlarikpadalangkah 4) Cariposisi yang tepatuntuk L[5] pada L[1..5],diperoleh : Langkah 6: (berdasarkansusunanlarikpadalangkah 5) Cariposisi yang tepatuntuk L[6] pada L[1..6],diperoleh : Selesai. Larik sudah terurutkan !
Kesimpulan • Pengurutandenganmetode bubble sort kurangefisienkarenaterlalubanyakpenukaran yang dilakukanpadasetiaplangkahdanmembutuhkanbanyakwaktuserta proses lebih lama, sehinggatidakdirekomendasikanuntukdipakai. Namunmetodeinimudahdipahamidansederhana. • Dibandingkandenganpengurutangelembung (bubble sort) pengurutandenganmetode selection sort (maksimum/minimum) inimemilikikinerja yang lebihbaik. Operasinyapertukaranhanyasekalisajadilakukanpadasetiaplangkahsehinggawaktupengurutandapatlebihditekan. • Kelemahanmetodesisipterletakpadabanyaknyaoperasi yang diperlukandalammencariposisi yang tepatuntukelemenlarik. Untuklarik yang jumlahnyabesarinitidakpraktis. Dari ketigametodetersebut, pengurutanmaksimum/minimum memilikikinerja yang terbaik.
TUGAS Ubahlahcontoh program selection sort ascending di atasmenjadi descending Dikumpulkanminggudepan script dan print sceen-nya di kertas