Selection Sort
Merupakan Kombinasi antara sorting dan searching. Metode selection  sort merupakan perbaikan dari metode bubble sort dengan mengurangi  jumlah perbandingan. Selection sort merupakan metode pengurutan dengan  mencari nilai data terkecil dimulai dari data diposisi 0 hingga diposisi  N-1. Jika terdapat N data dan data terkoleksi dari urutan 0 sampai  dengan N-1. Selama proses, perbandingan dan pengubahan, hanya dilakukan  pada indeks permbandingnya saja, pertukaran data secara fisik terjadi  pada akhir proses.sesuai dengan itu maka algoritma pengurutan data  secara Selection adalah sebagai berikut : 
35,75,69,58,21,40
Maka proses pengurutan datanya akan dijelaskan pada
tabel berikut
Berikut ini adalah algoritma dari Selection Lost yang menggunakan jenis sorting asscending dan descending
Selection Sort Dengan Asscending
 
Selection Sort Dengan Descending
 
- Cari data terkecil dalam interval j = 0 sampai dengan j = N-1
- Jika pada posisi pos ditemukan data yang terkecil, maka tukarkan data diposisi pos dengan data di posisi i jika k.
- Ulangi langkah 1
35,75,69,58,21,40
Maka proses pengurutan datanya akan dijelaskan pada
tabel berikut
| 1 | 2 | 3 | 4 | 5 | 6 | POSISI DATA | 
| 35 | 75 | 69 | 58 | 21 | 40 | tukar data 1 dengan 5 | 
| 21 | 75 | 69 | 58 | 35 | 40 | tukar data 2 dengan 5 | 
| 21 | 35 | 69 | 58 | 75 | 40 | tukar data 3 dengan 6 | 
| 21 | 35 | 40 | 58 | 75 | 68 | tukar data 5 dengan 6 | 
| 21 | 35 | 40 | 58 | 68 | 75 | Selection Sort Berhenti Bekerja | 
Berikut ini adalah algoritma dari Selection Lost yang menggunakan jenis sorting asscending dan descending
Selection Sort Dengan Asscending
Procedure acending_Selection;
Var I,j,pos:byte;
Begin
for i:=1 to max-1 do
begin
pos:=I;
for j:=i+1 to max do
if data[j] < data[pos] then pos:=j;
if ipos then tukardata(data[i],data[pos])
end;
End;Selection Sort Dengan Descending
Procedure desending_Selection;
Var I,j,pos:byte;
Begin
 for i:=1 to max-1 do
 begin
  pos:=I;
  for j:=i+1 to max do
  if data[pos] < data[j] then pos:=j;
  if ipos then
  tukardata(data[i],data[pos])
 end;
End;
 
Tidak ada komentar:
Posting Komentar