Procedur quick sort
#include <iostream>
using namespace std;
void masuk_data(int A[], int n) {
int i;
for (i = 0; i < n; i++) {
cout << "Data ke-%d : ",i+1;
cin >> A[i];
}
}
void cetak_data(const int A[], int n) {
int i;
for (i = 0; i < n; i++)
cout << "%d ",A[i];
cout << "\n";
}
void tukar (int *a, int *b)
{ int temp;
temp = *a;
*a = *b;
*b = temp;
}
void quick_sort(int data[], int L, int R) {
int i, j, p;
p = data[(L+R) / 2];
i = L;
j = R;
while (i<=j) {
while (data[i] < p) i++;
while (data[j] > p) j--;
if (i<=j)
{ tukar(&data[i], &data[j]);
i++;
j--;
}
}
if (L < j) quick_sort(data,L,j);
if (i < R) quick_sort(data,i,R);
}
void main() {
int data[10], n;
cout << "Banyak data : ");
cin >> n);
masuk_data(data,n);
cetak_data(data,n);
quick_sort(data,0,n-1);
cetak_data(data,n);
}
Kamis, 14 April 2016
Langganan:
Posting Komentar (Atom)
Refleksi minggu ke 2
Refleksi Pertemuan ke 2 Assalamu'alaikum w. wb., Selamat berjumpa lagi teman-teman, baik saya disini akan menuliskan tentang refl...
-
KATA PENGANTAR Puji dan syukur kami panjatkan kepada Allah SWT, karena atas rahmat dan karunia-Nya kami dapat menyelesaikan tugas ini...
-
Pertemuan ke-1 Buatlah contoh yang paling sering menjadi kegiatan sehari-hari dari : - Algoritma - Pemrograman Cara memas...
-
Algoritma menetukan segitiga {Dibaca 3 bilangan segmen garis, kemudian menentukan apakah membentuk segitiga} Deklarasi a,b,c : float...
Tidak ada komentar:
Posting Komentar