Mtode Pemograman Algoritma Selection Sort

Diposting pada 414 views

Pengurutan seleksi (selection sort) mempunyai mekanisme seperti berikut : Mula-mula suatu penunjuk (diberi nama posAwal), yang menunjuk ke lokasi awal pengurutan data, diatur agar berisi indeks pertama dalam larik. Selanjutnya dicari bilangan terkecil yang terletak antara posisi sesudah yang ditunjuk oleh petunjuk tersebut hingga elemen yang terakhir dalam larik. Lokasi bilangan ini ditunjuk oleh posMin. Lalu tukarkan nilai bilangan terkecil tersebut dengan nilai yang ditunjuk posAwal. Proses seperti itu diulang dari posAwal bernilai 0 hingga n-2, dengan n menyatakan jumlah elemen dalam larik.

Implementasi pengurutan selection sort dalam bentuk algoritma dan program

Algoritma :
    SUBRUTIN selection_sort (L,n)
      UNTUK posAwal = 0 S/D n-2
        PosMin ← posAwal
          UNTUK j ← posAwal + 1 S/D n-1
            JIKA L [posMin] > L[j] MAKA
            PosMin ← j
           AKHIR – JIKA
            AKHIR – UNTUK
        //Tukarkan
        tmp ← L[posAwal]
      L[posAwal] ← L[posMin]
    AKHIR – UNTUK
    AKHIR – SUBRUTIN

Sourch Code Program C++

#include <iostream.h>
#include <conio.h>

void tampilkan_larik(int data[], int n)
{
int i;
for (i=0;i<n;i++)
cout<<data[i]<<" ";
cout<<"n";
}

void selection_sort (int data[], int n)
{
int posMin, posAwal, j, tmp;
for (posAwal=0;posAwal<n-1;posAwal++)
{
posMin=posAwal;
for (j=posAwal+1;j<n;j++)
if (data[posMin]>data[j])
posMin=j;

//tukarkan
tmp=data[posAwal];
data[posAwal]=data[posMin];
data[posMin]=tmp;

cout<<"hasil posAwal= "<<posAwal<<" : ";
tampilkan_larik(data,n);
}
}

int main()
{
const jum_data=8;
int i;
int data[]={25,57,48,37,12,92,80,33};
selection_sort(data, jum_data);

//hasil pengurutan
cout<<endl;
cout<<"Hasil pengurutan:n";
tampilkan_larik(data,jum_data);
getch();
}

Hasil Program Setelah di Eksekusi

2 thoughts on “Mtode Pemograman Algoritma Selection Sort

Tinggalkan Balasan

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