2. Contoh Program Menggunakan Selection Sort
#include
using namespace std;
void selection_sort(int array[], int size);
void tampilkan(int array[],int size);
main(){
int array[10] = {30,45,10,94,39,24,10,80,100,50};
int size = sizeof(array)/sizeof(array[0]);
cout << "Data Sebelum disort : \n";
tampilkan(array,size);
cout << "Data Setelah disort : \n";
selection_sort(array,size);
tampilkan(array,size);
}
void selection_sort(int array[], int size){
for (int step = 0; step < size - 1; step++) {
int min_idx = step;
for (int i = step + 1; i < size; i++) {
if (array[i] < array[min_idx])
min_idx = i;
}
int temp = array[min_idx];
array[min_idx] = array[step];
array[step] = temp;
}
}
void tampilkan(int array[],int size){
for(int i = 0; i < size; i++){
cout << array[i] << " ";
} cout << "\n";
}
Data Sebelum disort :
30 45 10 94 39 24 10 80 100 50
Data Setelah disort :
10 10 24 30 39 45 50 80 94 100
Jika anda ingin mengubah proses sorting menjadi Descending (dari yang terbesar ke terkecil), caranya ialah mengubah kondisi dalam perintah if dari ">" (lebih besar) menjadi "<" (lebih kecil) untuk Bubble Sort dan sebaliknya untuk Selection Sort
Follow Instagram @kompasianacom juga Tiktok @kompasiana biar nggak ketinggalan event seru komunitas dan tips dapat cuan dari Kompasiana. Baca juga cerita inspiratif langsung dari smartphone kamu dengan bergabung di WhatsApp Channel Kompasiana di SINI