Modul 4 - Sorting
Modul 4 - Sorting
SORTING
Tujuan Intruksional :
Pokok Bahasan ini mengenalkan macam-macam dan teknik dari algoritma
Sorting dalam Struktur Data
Array = 1 9 2 7 5
Proses = 1. 1 9 2 7 5
2. 1 9 2 5 7
3. 1 9 2 5 7
4. 1 2 9 5 7
5. 1 2 9 5 7
6. 1 2 9 5 7
7. 1 2 5 9 7
8. 1 2 5 9 7
9. 1 2 5 7 9
10 1 2 5 7 9
Percobaan 1
#include<iostream>
using namespace std;
int main() {
//membuat tanda, apakah semua data telah terurut atau belum
bool terurut;
//input data
int a;
cout<<"banyak integer: ";cin>>a;
int b[a];
for (int c=0;c<a;c++){
cout<<"aray ke-"<<c<<": ";cin>>b[c];}
//proses sorting
for (int c=0;c<a;c++){
terurut=false; //beri tanda bahwa data belum terurut
Array = 1 9 2 7 5
Proses = 1. 1 9 2 7 5
2. 1 7 2 9 5
3. 1 7 2 9 5
4. 1 7 2 9 5
5. 1 7 2 9 5
6. 1 7 2 9 5
7. 1 7 2 9 5
8. 1 2 7 9 5
9. 1 2 7 9 5
10 1 2 5 9 7
11 1 2 5 9 7
11 1 2 5 9 7
12 1 2 5 9 7
13 1 2 5 7 9
Percobaan 2
#include<iostream>
using namespace std;
//penandaan pivot
k = int((m+n)/2);
tukar(&arai[m],&arai[k]);
pivot = arai[m];
i = m+1;
j = n;
//lakukan sub-data
qsort(arai,m,j-1);
qsort(arai,j+1,n);}}
int main() {
int a;
cout<<"banyak integer: ";cin>>a;
int b[a];
for (int c=0;c<a;c++){
cout<<"aray ke-"<<c<<": ";cin>>b[c];}
qsort(b,0,a-1);
for (int e=0;e<a;e++){
cout<<b[e]<<", ";}
cout<<endl;
return 0;}
//melakukan sub-data
if (m!=tengah){
msort(arai,m,tengah);
msort(arai,tengah+1,n);}
int tmp[n+1-m];
//melakukan sorting
while ((k<=tengah)&(j<=n)){
tmp[i++]=(arai[j]<arai[k])?arai[j++]:arai[k++];}
while (k<=tengah){
tmp[i++]=arai[k++];}
while (j<=n){
tmp[i++]=arai[j++];}
int main() {
int a;
cout<<"banyak integer: ";cin>>a;
int b[a];
for (int c=0;c<a;c++){
cout<<"aray ke-"<<c<<": ";cin>>b[c];}
msort(b,0,a-1);
for (int e=0;e<a;e++){
cout<<b[e]<<", ";}
cout<<endl;
return 0;}