Bismillah..Alhamdulillah, sholawat serta salam buat Nabi Muhammad -shallallahu'alaihi wasallam-
Pada Kesempatan kali ini saya akan memposting pengembangan algoritma tentang selection sort.
Oke cekidot.
Mengurutkan Bilangan dengan Metode Selection Sort
- Identifikasi Masalah
Permasalahannya adalah dalam suatu array, isi bilangannya tidak urut dari bilangan terkecil ke bilangan terbesar. - Menentukan Input & Output
Input :
n (banyak data)
a[] (sebanyak n)
Output:
a[](data yang sudah urut) - Membuat Flowchart
- Test Menggunakan Data
Input:
n = 8
a[1]=8
a[2]=4
a[3]=7
a[4]=3
a[5]=1
a[6]=2
a[7]=6
a[8]=5
Output:
a[1]=1
a[2]=2
a[3]=3
a[4]=4
a[5]=5
a[6]=6
a[7]=7
a[8]=8 - Implementasi di C++
#include <iostream> using namespace std; void baca_data(int A[], int n) { int i; for (i = 0; i < n; i++) { cout << "Masukkan 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]); } } main() { int data[10], n; cout<< "\t\tSELECTION SORT"<<endl<<endl; cout<< "Masukkan Banyak Data = "; cin >> n; baca_data(data,n); cout<<"Data Awal : "; cetak_data(data,n); selection_sort(data,n); cout<<"Setelah diurutkan : "; cetak_data(data,n); return 0; }
- Hasil Eksekusi
hasil eksekusi
Lama waktu pengerjaan 4 jam 25 menit
Bubble Sort - Luthfi Ryanto
Insertion Sort - Izu Tolandona
0 komentar:
Posting Komentar