Anda di halaman 1dari 6

NIM : 1711522015 Tanggal : Senin, 9 April 2018

Nama : Vicky Ariga Elsayrafl Asisten :


Mata Kuliah : Praktikum Struktur Data 1. Tenti Atika Putri
Modul :9 2. Vedo Alfarizi
Kelas : 02

Resume *Sorting

A. Ringkasan materi
Sorting merupakan suatu proses untuk menyusun kembali himpunan
obyek menggunakan aturan tertentu. Sorting disebut juga sebagai suatu
algoritma untuk meletakkan kumpulan elemen data kedalam urutan
tertentu berdasarkan satu atau beberapa kunci dalam tiap-tiap elemen.

Pada dasarnya ada dua macam urutan yang biasa digunakan dalam suatu
proses sorting:
1. Urut naik (ascending) Mengurutkan dari data yang mempunyai nilai
paling kecil sampai paling besar.
2. Urut turun (descending) Mengurutkan dari data yang mempunyai nilai
paling besar sampai paling kecil.

Mengapa harus melakukan sorting data?


Ada banyak alasan dan keuntungan dengan mengurutkan data. Data yang
terurut mudah untuk dicari, mudah untuk diperiksa, dan mudah untuk
dibetulkan jika terdapat kesalahan. Data yang terurut dengan baik juga
mudah untuk dihapus jika sewaktu-waktu data tersebut tidak diperlukan
lagi. Selain itu, dengan mengurutkan data maka kita semakin mudah
untuk menyisipkan data atapun melakukan penggabungan data.
Metode-metode sorting meliputi:
1.Bubble sort(Metode Gelembung)
2. Selection Sort (Metode Seleksi)
3. Insertion Sort (Metode Penyisipan)

Praktikum Struktur Data & Algoritma


B. Contoh program
//---------------------------------------------------------------------------
/*set ukuran arary
input data
tampil
bubble_asc
bubble_desc
hapus
keluar
*/

#include <vcl.h>
#include <iostream.h>
#pragma hdrstop

int kentang[100],n=0;

// Fungsi
void set()
{
int p;
cout<<"Masukkan batas kentang :";
cin>>p;cout<<endl;
n=p;
}

int input()
{
if(n==0)
{
Praktikum Struktur Data & Algoritma
cout<<"Batas belum di set"<<endl;
}
else
{
int berat;
for(int i=0;i<n;i++)
{
cout<<"berat ke-"<<i+1<<" :";
cin>>berat;
kentang[i]=berat;
}
for(int j=0;j<n;j++)
{
kentang[j]=0;
}
}
}

void bubble_asc()
{
for(int i=0;i<n-1;i++)
{
for(int j=0;j<n-1;j++)
{
if(kentang[j]>kentang[j+1])
{
int temp=kentang[j];
kentang[j]=kentang[j+1];
kentang[j+1]=temp;
}
}
}
Praktikum Struktur Data & Algoritma
}
void bubble_desc()
{
for(int i=0;i<n-1;i++)
{
for(int j=0;j<n-1;j++)
{
if(kentang[j]<kentang[j+1])
{
int temp=kentang[j];
kentang[j]=kentang[j+1];
kentang[j+1]=temp;
}
}
}
}

void tampil()
{
if(n==0)
{
cout<<"Batas belum di set"<<endl;
}
else
{
for(int i=0;i<n;i++)
{
cout<<kentang[i]<<" ";
}
}
}

Praktikum Struktur Data & Algoritma


void hapus()
{
n=0;
}

//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
n:
int value;
cout<<"1.Masukkan Batas data"<<endl;
cout<<"2.Input berat kentang"<<endl;
cout<<"3.Bubble sort (ascending)"<<endl;
cout<<"4.Bubble sort (descending)"<<endl;
cout<<"5.Tampil"<<endl;
cout<<"6.Hapus data"<<endl;
cout<<"7.Keluar"<<endl<<endl;

cout<<"Value :";cin>>value;

switch (value)
{
case 1:
set();
cout<<endl;
goto n;
case 2:
input();
cout<<endl;
goto n;
case 3:
Praktikum Struktur Data & Algoritma
bubble_asc();
cout<<endl;
goto n;
case 4:
bubble_desc();
cout<<endl;
goto n;
case 5:
tampil();
cout<<endl;
goto n;
case 6:
hapus();
cout<<endl;
goto n;
case 7:
system ("pause");
return 0;
default : goto n;
}
}
//---------------------------------------------------------------------------

C. Kesimpulan
Pengurutan data dalam struktur data sangat penting terutama untuk data
yang beripe data numerik ataupun karakter. Pengurutan dapat dilakukan
secara ascending (urut naik) dan descending (urut turun). Pengurutan
(Sorting) adalah proses pengurutan data yang sebelumnya disusun secara
acak sehingga tersusun secara teratur menurut aturan tertentu.

Praktikum Struktur Data & Algoritma

Anda mungkin juga menyukai