Senin, 16 Mei 2016

kasus 8.5 program sorting dengan metode selection

  No comments    
categories: 
Dengan Dev C++ :
#include <iostream>
#include <cstdlib> 
using namespace std; 
void baca_data(int A[], int n)
{ int i;
for (i=0;i<n;i++){
 cout << "Data ke-: "<<i+1<<" : ";
cin >> A[i];
}
}
void cetak_data(const int A[], int n)
{ int i;
for (i=0;i<n;i++)
cout << A[i];
cout << "\n";
}
void tukar (int *a, int *b)
{ int temp;
temp = *a;
*a = *b;
*b = temp;
}
void minimum(int A[], int dari, int n, int * tempat)
{ int i, min;
min = A[dari];
*tempat = dari;
for (i = dari+1;i<n;i++)
if (A[i]<min)
{ min = A[i];
*tempat = i;
}
}

void selection_sort(int A[], int n)
{ int i, t;
for (i=0;i<n;i++){
  minimum(A,i,n,&t);
tukar(&A[i], &A[t]);
}
}
int main(int argc, char** argv) {
    int data[10], n; 
    cout << "Banyak data : ";
    cin >> n;
    baca_data(data,n);
    cetak_data(data,n);
    selection_sort(data,n);
    cetak_data(data,n); 
return 0;
}

Berikut Hasil Compilenya :



Algoritma :

Deklarasi
       i, t : integer
Deskripsi
      for i <-- 1 to n do
            minimum(A, i, n, t);
            tukar(A[i], A[t]); {tukar tempat elemen saat ini j dengan elemen terkecil yang ditemukan t}

    endfor

untuk program dengan metode bubble sort klik disini
untuk program dengan metode insertion sort klik disini

0 komentar:

Posting Komentar