Selection Sort Algorithm
Hai teman,di sini saya akan sharing sedikit tentang materi pemrograman c++ yaitu materi tentang Selection sort,Selection sort adalah pengurutan data yang akan menukar nilai yang terkecil atau terbesar ke posisi ujung dari data nilai yang akan diurutkan. Demikian seterusnya hingga semua daftar dalam keadaan terurut. Proses dasar yang terjadi dalam algoritma ini adalah proses pertukaran nilai (swapping).
Selection Sort terbagi atas dua macam yaitu:
- Selection Sort Ascending adalah pengurutan data dari yang kecil ke yang besar
- Selection Sort Descending adalah pengurutan data dari yang besar ke yang kecil
oke teman semuanya,untuk lebih jelasnya saya akan memberika contoh dari Selection Sort Ascending dan Selection Sort Descending.
SELECTION
SORT ASCENDING
|
#include <iostream.h>
#include <conio.h>
using namespace std;
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 selection_sort(){
int pos,i,j;
for(int i=1;i<=n-1;i++)
{
pos=i;
for(j=i+1;j<=n;j++)
{
if(data[j]<data[pos])pos=j;
}
if(pos!=i)tukar(pos,i);
}
}
int main(){
cout<<"PROGRAM SELECTION SORT
ASCENDING"<<endl;
cout<<"Masukkan Jumlah Data Anda : ";
cin>>n;
for(int i=1;i<=n;i++)
{
cout<<"Masukkan data ke
"<<i<<":";
cin>>data[i];
data2[i]=data[i];
}
selection_sort();
cout<<"\n\n";
//tampillkan data
cout<<"Data Setelah di Sort : ";
for(int i=1; i<=n;i++)
{
cout<<" "<<data[i];
}
cout<<"\n\nSorting Selesai";
getch();
return 0;
}
|
SELECTION
SORT DESCENDING
|
#include <iostream.h>
#include <conio.h>
using namespace std;
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 selection_sort(){
int pos,i,j;
for(int i=1;i<=n-1;i++)
{
pos=i;
for(j=i+1;j<=n;j++)
{
if(data[j]>data[pos])pos=j;
}
if(pos!=i)tukar(pos,i);
}
}
int main(){
cout<<"PROGRAM SELECTION SORT
DESCENDING"<<endl;
cout<<"Masukkan Jumlah Data Anda : ";
cin>>n;
for(int i=1;i<=n;i++)
{
cout<<"Masukkan data ke
"<<i<<":";
cin>>data[i];
data2[i]=data[i];
}
selection_sort();
cout<<"\n\n";
//tampillkan data
cout<<"Data Setelah di Sort : ";
for(int i=1; i<=n;i++)
{
cout<<" "<<data[i];
}
cout<<"\n\nSorting Selesai";
getch();
return 0;
}
|
EmoticonEmoticon