Archive for Juli 2018

PENGERTIAN SORTING DAN CONTOH PROGRAMNYA DALAM C++

Selasa, 03 Juli 2018
Posted by Steven Cornelius VR
SORTING

Sorting adalah suatu peroses pengurutan data yang sebelumnya disusun secara acak atau tidak teratur menjadi urut dan teratur menurut suatu aturan tertentu. Biasanya pengurutan terbagi menjadi 2 yaitu : ascending ( pengurutan dari karakter/angka kecil ke karakter/angka besar ke karakter/angka angka kecil ) ada banyak cara yang dapat dilakukan untuk melakukan proses paling atas kepaling bawah atau sebaliknya. Untuk melakukan proses pengurutan dapat menggunakan beberapa metode anatar lain :

1) Bubble Sort

Bubble sort adalah suatu metode pengurutan yang membandingkan elemen yang sekarang dengan elemen berikutnya. Pembandingan alamatnya dapat dimulai dari data yang paling awal atau yang paling akhir. Apabila elemen yang sekarang ( sebelumnya ) lebih besar dari elemen berikutnya, maka posisi ditukar, kalau tidak posisinya tetap atau tidak perlu ditukar.

2) Selection Sort

Selection sort adalah suatu metode pengurutan yang mebandingkan elemen yang sekarang dengen elemen berikutnya samapai elemen terahkir. jika ditemukan elemen lain yang lebih kecil dari elemen sekarang maka dicatat posisinya dan langsung ditukar.

3) Quick Sort

Quick sort adalah suatu metode pengurutan yang mebandingkan suatu elemen ( pivot ) dengan elemen lain dan menyusunkan sedemikian rupa sehingga elemen yang lain lebih kecil dari pada pivot terletak disebelah kiri kiri pivot sedangkan elemen yang lebih besar dari pivot diletakan disebelah kanan pivot.

4) Merge Sort

Merge sort adalah suatu metode pengurutan yang mebandingkan elemen satu dengan elemen yang lain, Apabalia nilainya lebih kecil maka datanya ditampung di elemen yang lain lagi.

Contoh Sorting Dalam Program C++

Contoh 1 :

/* Mengurutkan data dengan metode bubble sort */
#include<iostream>
void BubbleSort(int data[],int n); //prototipe fungsi
using namespace std;
int main()
{
 cout<<"NAMA            :VISCA REZA STEVEN CORNEL PARDEDE"<<endl;
  cout<<"NIM             :171011401084"<<endl;
  cout<<"RUANGAN         :02TPLE 013"<<endl;
  cout<<"MATKUL          :ALGORITMA DAN PEMROGRAMAN"<<endl;
  cout<<"Tugas Program :Mengurutkan data dengan metode Penyisipan"<<endl;
  cout<<"============================================================\n\n"<<endl;

int i;
int n=9; //jml data = 10, maka n=9
int data[]={20,10,32,100,60,12,70,25,45,65};
cout<<"Sebelum diurutkan : "<<endl;
for(i=0;i<=n;i++)
cout<<data[i]<<" ";
cout<<endl;
cout<<"____________________________"<<endl;
BubbleSort(data,n); /*pemanggilan fungsi bubblesort*/
cout<<"Setelah diurutkan : "<<endl;
for(i=0;i<=n;i++)
cout<<data[i]<<" ";
cout<<endl;
}
void BubbleSort(int array1[],int n)
{
int i,k,tmp;
for(n-1;i<=n;i++)
{
for(k=n;k>=i;k--)
{
if(array1[k]<array1[k-1])
{
tmp=array1[k];
array1[k]=array1[k-1];
array1[k-1]=tmp;
}
}
}
}

Hasilnya :



Contoh 2 :

/*Mengurutkan data dengan metode Penyisipan*/
#include<iostream>
#define A 8 /*Jumlah data*/
void InsertionSort(int data[],int n); /*prototipe fungsi*/
using namespace std;
int main()
{

 cout<<"NAMA            :VISCA REZA STEVEN CORNEL PARDEDE"<<endl;
  cout<<"NIM             :171011401084"<<endl;
  cout<<"RUANGAN         :02TPLE 013"<<endl;
  cout<<"MATKUL          :ALGORITMA DAN PEMROGRAMAN"<<endl;
  cout<<"Tugas Program :Mengurutkan data dengan metode Penyisipan"<<endl;
  cout<<"============================================================\n\n"<<endl;

int i;
int n=A-1;
int data[]={12,20,35,10,50,72,25,28};
cout<<"Sebelum diurutkan :"<<endl;
for(i=0;i<=n;i++)
cout<<data[i]<<" ";
cout<<endl;
cout<<"_______________________________________________"<<endl;
InsertionSort(data,n);
cout<<"Setelah diurutkan :"<<endl;
for(i=0;i<=n;i++)
cout<<data[i]<<" ";
cout<<endl;
}
void InsertionSort(int array1[],int n)
{
int i,j,x;
bool ketemu;
for(i=1;i<=n;i++)
{
x=array1[i];
j=i-1;
ketemu=false;
while((j>=0)&&(!ketemu))
{
if(x>array1[j])
{
array1[j+1]=array1[j];
j=j-1;
}
else
ketemu=true;
}
array1[j+1]=x;
}
}

Hasilnya :

Welcome to My Blog

Follow Me on Instagram

Instagram

Recent Post

Popular Post

Total Pageviews

Followers

Follow,Like,& Share

Ṧȶḝvḝȵ Ḉṏrṉḝliuȿ Ṽʀ. Diberdayakan oleh Blogger.

- Copyright © SteveneeD-IT_TI -Only-SevenIT- Powered by Blogger - Designed by Steven Cornelius -

Naruto  Rasengan