a. Selection Sort
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 maka algoritma
pengurutan dengan metode selection sort adalah sebagai berikut:
Ø
Cari
data terkecil dalam interval j = 0 sampai dengan j = N-1
Ø
Jika
pada posisi pos ditemukan data yang terkecil, tukarkan data diposisi pos
dengan data di posisi i jika k.
Ø
Ulangi
langkah 1 dan 2 dengan j = j+i sampai dengan j = N-1, dan
seterusnya sampai j = N - 1.
Contoh Program Selection Sort :
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <iomanip.h>
void main()
{
int x[5];
int i;
int temp;
int minindex;
int j;
clrscr();
cout<<"
>> SELAMAT DATANG di CONTOH PROGRAM SELECTION SORT <<"
<<endl;
cout<<"=======================================================\n"<<endl;
cout<<"masukkan
nilai x :\n";
for(i=0; i<5; i++)
{
cout<<"x["<<i<<"]
= ";cin>>x[i];
cout<<"\n";
}
cout<<"Data
sebelum di sort :";
for(i=0; i<5;i++)
{
cout<<setw(4)<<x[i];
}
for(i=0; i<5-1; i++)
//perulangan iterasi
{
minindex=i;
for(j=i+1;
j<5; j++) //perulangan membandingkan data
{
if(x[minindex]>x[j])
{
minindex=j;
}
}
temp=x[i];
x[i]=x[minindex];
x[minindex]=temp;
}
cout<<"\n\nData
setelah di sort :";
for(i=0; i<5; i++)
{
cout<<setw(4)<<x[i];
}
getch();
}
Tampilan sederhana ketika program selection sort dijalankan :
b.
Insertion Sort
Metode penyisipan
(Insertion sort) yang bertujuan untuk menjadikan bagian sisi kiri array
terurutkan sampai dengan seluruh array berhasil diurutkan. Metode ini
mengurutkan bilangan-bilangan yang telah dibaca dan berikutnya secara berulang
akan menyisipkan bilangan-bilangan dalam array yang belum terbaca ke sisi kiri
array yang telah terurut.
Contoh program
insertion sort:
#include <iostream.h>
#include <conio.h>
int data[10],data2[10];
int n;
void tukar(int a, int b)
{
int t;
t =
data[b];
data[b] =
data[a];
data[a] =
t;
}
void insertion_sort()
{
int
temp,i,j;
for(i=1;i<=n;i++)
{
temp =
data[i];
j = i
-1;
while(data[j]>temp && j>=0)
{
data[j+1] = data[j];
j--;
}
data[j+1] = temp;
}
}
void main()
{
cout<<">> SELAMAT DATANG di PROGRAM INSERTION SORT
<<"<<endl;
cout<<"=============================================="<<endl;
cout<<"\n"<<endl;
cout<<"Masukkan Jumlah Data : "; cin>>n;
cout<<"\n"<<endl;
for(int
i=1;i<=n;i++)
{
cout<<"Masukkan data ke "<<i<<" : ";
cin>>data[i];
data2[i]=data[i];
}
insertion_sort();
cout<<"Data Setelah di Sort : ";
for(int
i=1; i<=n; i++)
{
cout<<" "<<data[i];
}
getch();
}
Tampilan sederhana ketika program insertion sort dijalankan :
DAFTAR PUSTAKA
- Anonim. 2014. Insertion Sort. Diakses tanggal 05 Juni 2015 pada http://arna.lecturer.pens.ac.id/Modul_ASD/8.1%20Insertion-Sort.pdf
- Anonim. 2013. Algoritmaa Selection Sort. Diakses tanggal 05 Juni 2015 pada http://www.sepertinya.com/algoritma-c-selection-sort-lengkap.html
THANKYOU!!!
Selamat Mencoba :)
Selain materi diatas terdapat juga beberapa materi struktur
data, silahkan klik link di bawah ini :
Tidak ada komentar:
Posting Komentar