September 23, 2020

matheusrumetna.com

berbagai ilmu seputar dunia teknologi informasi

Contoh Program Sederhana Sorting ‘selection sort’

1 min read
c++ programming

Algortima dari selection sort dapat dijelaskan sebagai berikut. Pengurutan data dilakukan dengan mencari data yang paling kecil dan kemudian menukarnya dengan data yang digunakan sebagai acuan (pivot). Disini pivot merupakan data ke-i. Pertama digunakan pengulangan dari 1 hingga N-1 (N adalah jumlah data). Pada setiap pengulangan akan dicari data yang paling kecil diantara data ke (i+1) sampai dengan data ke N (data terakhir).

Bila loop bagian dalam dimodifikasi untuk mencari data yang terbesar dahulu, maka proses pengurutannya adalah pengurutan descending (menurun).

Berikut contoh Program Sederhana ‘selection sort’. Disini saya menggunakan tools Borland C++ 5.02.

Script :
/*contoh program sederhana ‘selection sort’*/

#include “stdio.h”
#include “conio.h”
#include “stdlib.h”

void swap (int &x, int &y);
void selection_sort(int Array[], int &awal, int &akhir);

void main()
{
int i,jumdata,aw,ak;
int data[9] = {2,4,6,5,1,7,0,3,8};

jumdata = sizeof(data)/sizeof(int);
aw = 0;
ak = jumdata-1;

printf(“Pengurutan data dengan Selection Sort \n”);
printf(“\n Sebelum diurutkan : “);

for(i=0;i<jumdata;i++)
printf(“%5d”,data[i]);

selection_sort(data,aw,ak);

printf(“\n Sesudah diurutkan : “);

for(i=0;i<jumdata;i++)
printf(“%5d”,data[i]);
getch();
_exit(0);
}

void selection_sort(int Array[], int &awal, int &akhir)
{
int i,j,k,temp;
i = awal;

while(i<=9)
{
k=i;
j=i+1;
while(j<=9)
{
if(Array[j]<Array[k])k=j;
j++;
}
swap(Array[k],Array[i]);
i++;
}
}

void swap(int &x, int &y)
{
int temp;
temp = x;
x = y;
y = temp;
}

Output :
output-program-selection-sort

Selamat mencoba. Semoga bermanfaat. Tuhan memberkati. 🙂

Share This Post

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *