Oke, aku mainan algoritma sorting ah. Udah lama sekali aku ndak pakai berbagai macam algoritma pengurutan. Algoritma pengurutan ini ada beberapa macam, seperti : Buble sort, Selection Sort, Insertion Sort dan Merge Sort. Pengurutan sendiri ada 2 macam menurut saya, pengurutan dari kecil ke besar (ascending) dan pengurutan dari besar ke kecil (descending).
Bubble Sort
Metode ini membandingkan data 1 ke data berikutnya, jika tidak sesuai dengan pengurutannya maka kedua data tersebut ditukar.
Listing Program :
program bubble;
uses crt;
var jumdat,tmp,i,j:byte;
data:array[1..50] of byte;
begin
clrscr;
readln(jumdat);
for i:= 1 to jumdat do readln(data[i]);
{bubble sort}
for i:=1 to jumdat-1 do
for j:=i to jumdat do begin
{tanda > atau < menentukan bentuk pengurutan}
if data[i]>data[j] then begin
tmp:=data[i];
data[i]:=data[j];
data[j]:=tmp;
end;
end;
{cetak data}
for i:=1 to jumdat do write(data[i],' ');
writeln;
readkey;
end.
Selection Sort
Metode pengurutan ini dilakukan dengan menentukan nilai minimum dari data kemudian menukarkan data terkecil dengan posisi terdepan saat itu.
Listing program :
program selection;
uses crt;
var jumdat,tmp,min,i,j:byte;
data:array[1..50] of byte;
begin
clrscr;
readln(jumdat);
for i:= 1 to jumdat do readln(data[i]);
{selection sort}
for i:=1 to jumdat-1 do begin
min:=i;
{mendapatkan nilai minimum}
for j:=i+1 to jumdat do begin
if data[j]<data[min] then min:=j
end;
{menukar data dengan data minimum}
tmp:=data[i];
data[i]:=data[min];
data[min]:=tmp;
end;
{cetak data}
for i:=1 to jumdat do write(data[i],' ');
writeln;
readkey;
end.
Aplikasi metode Sorting
Sorting
Langganan:
Postingan (Atom)
0 komentar:
Posting Komentar
Catatan: Hanya anggota dari blog ini yang dapat mengirim komentar.