blog.jhonarendra.com currently under maintenance

Fri Nov 11 2016

Algoritma Selection Sort dan Bubble Sort

Pemrograman Algoritma

4637 1

Algoritma Selection Sort dan Bubble Sort blog jonarendra

Di mata kuliah algoritma, saya mendapat materi tentang Brute Force. Brute Force sendiri adalah algoritma untuk memecahkan masalah-masalah yang biasanya berhubungan dengan matematika. Misalnya saja mengurutkan bilangan. Dalam mengurutkan bilangan, ada beberapa metode/algoritma yang dapat dipilih. Untuk kali ini, saya jelaskan tentang Algoritma Selection Sort dan Bubble Sort.

1. Selection Sort

Algoritma Selection Sort gif bergerak blog jonarendra

Selection sort yaitu proses memindahkan elemen dengan membandingkan elemen sekarang dengan elemen berikutnya sampai dengan elemen terakhir. Jika ditemukan elemen lain yang lebih kecil dari elemen sekarang maka dicatat posisinya lalu kemudian ditukar dan begitu seterusnya.

Pertama program akan mencari data terkecil dari data pertama sampai data yang terakhir, kemudian ditukar posisinya dengan data pertama. Lalu dicari data terkecil dari data kedua sampai dengan data terakhir, kemudian ditukar posisinya dengan data kedua dan seterusnya sampai data terurut naik. Apabila n buah data yang akan diurutkan, maka membutuhkan n-1langkah pengurutan, dengan data terakhir, yaitu data n tidak perlu diurutkan karena hanya tinggal satu-satunya.

Pseudocode

Algoritma_Selection_Sort

{Mengurutkan bilangan acak dari bilangan terkecil ke bilangan terbesar dengan metode Selection Sort}

Deklarasi

i : integer

j : integer

n : integer

min : integer

temp : integer

A : Array[0…n-1] of integer

Deskripsi:

Begin

for i ? 0 to n – 2 do

min ? i

for j ? i + 1 to n – 1 do

if A[j] < A[min]

min ? j

endif

endfor

swap A[i] and A[min]

endfor

Algoritma selection sort dalam proses pengurutannya menggunakan metode looping for bertingkat. Seperti biasa yang dipakai adalah variabel i dan j. Sedangkan n merupakan jumlah array yang ada. Dibuat n-1 karena array dimulai dari array ke 0, 1, 2, 3 dst. Untuk min merupakan variabel pembantu dalam proses pertukaran.

2. Bubble Sort

Algoritma Bubble Sort gif bergerak blog jonarendra

Aplikasi lain dari brute force untuk masalah menyortir adalah Bubble Sort. Cara kerja bubble sort hampir sama dengan Selection Sort. Yang membedakan adalah elemen yang dibandingkan adalah elemen yang berdekatan. Jadi program akan membandingkan elemen pertama dengan kedua, lalu kedua dengan ketiga, lalu ketiga dan keempat dan seterusnya sampai n. Lalu kembali lagi membandingkan elemen pertama dengan kedua, kedua dengan ketiga sampai n-2 (pada iterasi ke-2 elemen terakhir tak dibandingkan lagi).

Dengan melakukan hal tersebut berulang-ulang, dapat dipastikan elemen terbesar akan menempati posisi akhir dalam daftar. Berikutnya elemen terbesar kedua akan menempati tempat nomor 2 dari akhir, begitu seterusnya. 

Pseudocode

Algoritma_Bubble_Sort

{Mengurutkan bilangan acak dari bilangan terkecil ke bilangan terbesar dengan metode Bubble Sort}

Deklarasi:

i: integer

a : integer

j : integer

n : integer

A: Array [0 . . n-1] of integer

Deskripsi:

Begin

for i ? 0 to n?2 do

for j ? 0 to n?2?i do

if A[j +1]<A[j]

swap A[j] and A[j +1]

endif

endfor

endfor

Mirip dengan pseudocode dari selection sort, bubble sort juga menggunakan looping for bertingkat. Dimana bedanya disini yang di tukar (swap) adalah A[j] dan A[j+1] (Array j dan Array j+1) dengan kata lain array yang bersebelahan.

Sekian artikel dari Blog Jonarendra yang berjudul Algoritma Selection Sort dan Bubble Sort, semoga dapat menambah wawasan anda tentang algoritma mengurutkan bilangan.

Comment

Mahendra tutorial.
Mantap nih, berkarya terus gan..
Mon Nov 14 2016

© 2022 Putu Jhonarendra