Selasa, 19 Februari 2013

PENGURUTAN BILANGAN DENGAN METODE SELECTION SORT




Pengertian Selection Sorting : Memindahkan elemen dengan cara membandingkan elemen sekarang dengan elemen yang berikutnya sampai dengan elemen terakhir . Jika ditemukan elemen lain yang lebih kecil dari elemen sekarang maka dicatat posisinya dan kemudian ditukar dan begitu seterusnya.

Proses pengurutan menggunakan metode selection sort secara terurut nik adalah sebagai berikut:
  1. Mencari data terkecil dari data pertama sampai dengan data yang terakhir. kemudian ditukar posisinya dengan data pertama.
  2. Mencari data terkecil dari data kedua sampai dengan data terakhir, kemudian ditukar posisinya dengan data kedua.
  3. Mencari data terkecil dari data ketiga sam[ai data terakhir, kemudian ditukar posisimya dengan data ketiga.
  4. Begitu seterusnya sampai semua data terurut naik. Apabila terdapat n buah data yang akan diurutkan, maka membutuhkan (n-1) langkah pengurutan, dengan data terakhir, yaitu data ke n tidak perlu diurutkan karena hanya tinggal data satu-satunya.


Algoritma pengurutan selection sort ini termasuk algoritma sulit dibagi/ mudah digabung (hard split/easy join).  Dari proses pengurutannya, Selection sort ini memiliki dua buah varian yaitu :
1. Maximum Sort
memilih data yang maksimum dari suatu kumpulan data larik, lalu menempatkan data tersebut ke elemen paling akhir atau paling awal sesuai pengurutan yang diinginkan. Data maksimum/minimum yang diperoleh, “diisolasi” dan tidak diikutsertakan pada proses pencarian data maksimum berikutnya.
2. Minimum Sort
memilih data yang minimum dari suatu kumpulan data larik , lalu menempatkan data tersebut ke elemen paling akhir atau paling awal sesuai pengurutan yang diinginkan. Data minimum yang diperoleh, “diisolasi” dan tidak diikutsertakan pada proses pencarian data minimum berikutnya.

Dalam pemecahan masalah algoritma selection sort , kita dapat memilih dua metode alternatif algoritma antara lain pemecahan dengan metode Brute Force dan pemecahan dengan metode devide and conquer.
Metode Pemecahan Brute Force

Kekuatan algoritma brute force terletak pada kemampuannya untuk menemukan semua pemecahan masalah yang mungkin, akan tetapi langkah yang dibutuhkan sangat banyak sehingga tidak baik jika digunakan untuk memecahkan masalah yang memiliki masukan yang cukup besar. Mengurutkan secara ascending dengan metode brute force

Contoh Code :

procedure SelectionSort(input/output L[1..N]: array of integer)
{Mengurutkan larik L[1..N] sehingga terurut menaik dengan metode selection sort. Asumsi : nilai N (jumlah elemen array) diketahui dan elemen larik L sudah terdefinisi nilainya }

Kamus
   i,j : integer
   temp : integer {temporary}
   Imaks : integer {indeks yang berisi nilai maks sementara}

Algoritma
   for i = n downto 2 do</p>
      Imaks ← i
      {elemen terakhir diasumsikan sebagai elemen maksimum sementara}
      for j = 1 to (i-1)
         if L[j] > L[Imaks] then
            Imaks ← j
         endif
      endfor
      {pertukaran L[i] dengan L[Imaks]</p>
      If L[i] <> L[Imaks] then
         temp ← L[i]
         L[i] ← L[Imaks]
         L[Imaks]  ← temp
      endif
   endfor



7 komentar:

Admin I mengatakan...

materinya bagus gan, semoga materi Selection sortnya bsa saling melengkapi
.
www.markijar.blogspot.com/2015/04/contoh-program-selection-sort-c.html

Unknown mengatakan...

Materinya Sangat Bagus Dan Mudah Dimengerti. Makasih Banyak Gan :D

Unknown mengatakan...

ada yang salah

Unknown mengatakan...

gan boleh minta WA/pin bbm nya, biar gampang saya nanya langsung ke anda

Stefan supardi mengatakan...

trimakasi berkat materi ini saya pd maju ke depan

Anonim mengatakan...

makasi sangat membantu.

Shikamaru Nara mengatakan...

nice information min
Timah solder

Posting Komentar