1. Definisi Sorting
Sorting adalah pengurutan data. Data diurutkan dari yang terkecil sampai
yang paling besar atau sebaliknya. Tujuannya supaya data tersebut jadi tersusun
rapi, terurut dan teratur.
Metode Sorting :
a. Bubble Sort (Metode Gelembung)
BubbleSort adalah pengurutan data yang dilakukan dengan
membandingkan antara data[n] dengan data[n+1] atau antara data[n] dengan
data[n-1] kemudian jika data lebih kecil/besar dilakukan pertukaran. Pada
setiap iterasi dapat terjadi beberapa kali pertukaran atau tidak sama sekali.
Jumlah iterasi ditentukan oleh banyaknya data atau ‘N’. Iterasi=N-1.”
b. Selection Sort (Metode Seleksi)
Selection Sort adalah merupakan sebuah algoritma pengurutan yang
secara berulang mencari data yang belum terurut dan mencari paling sedikit
satu untuk dimasukkan ke dalam lokasi akhir.
c. Insert Sort (Metode Penyisipan)
Insertion Sort dilakukan dengan cara menyisipkan sebuah angka ke
posisi yang diinginkan. Angka yang disisipkan sesuai dengan urutan
iterasinya. Jumlah iterasi ditentukan oleh banyaknya data atau ‘N’.
Iterasi=N”.Sekilas algoritma ini tidak jauh berbeda dengan Bubble Sort,
namun sesungguhnya berbeda.
2. Contoh Program Sorting
a. Bubble Sort (Metode Gelembung)
b. Selection Sort (Metode Seleksi)
c. Insert Sort (Metode Penyisipan)
int main()
{ int a,k,c,d,g;
k=5;
int b[5];
for(d=a+1;d<k;d++)
{
c=a;
if(b[c]>b[d])
{
c=d;
}
g=b[c];
b[c]=b[a];
b[a]=g;
}
}
cout<<"\n setelah diurutkan akan menjadi : \n";
for(a=0;a<k;a++)
{
cout<<b[a]<<" \n";
}
}
for(i=0;i<n;i++){printf("%d ",L[i]);}
for(i=0;i<(n-1);i++){
/*5 3 2 4 ===> 3 5 2 4, 2 5 3 4, 2 5 3 4 // 2 3 5 4, 2 3 5 4 // 2 3 4 5*/
for(j= i+1;j<n;j++){
if(L[i]>L[j]){
temp=L[i];
L[i]=L[j];
L[j]=temp;
}
}
}
int main()
{
int i,j,n,nilai,a[30];
cout<<"Masukkan Jumlah data : ";
cin>>n;
cout<<"Masukkan nilai : "<<endl;
for(i=0;i<n;i++)
{
cin>>a[i];
}
for(i=1;i<=n-1;i++)
{
nilai=a[i];
j=i-1;
while((nilai<a[j])&&(j>=0))
{
a[j+1]=a[j];
j=j-1;
}
a[j+1]=nilai;
}
cout<<"Hasil Urutan"<< " ";
for(i=0;i<n;i++)
{
cout<<a[i];
}
return 0;
}