Contoh Program Insertion Sort
Contoh Program Insertion Sort
#include <iostream> #include <stdio.h> #include <conio.h> int main (){ int a[9]={12,45,67,78,23,5,0,84,19},i,lk,lb; printf("sebelum sorting \n"); for(i=0;i<9;i++){ printf(" %i ",a[i]); } for(i=0;i<9;i++){ lb=a[i]; lk=i-1; while(a[lk]>lb && lk>=0){ a[lk+1] = a[lk]; lk--; } a[lk+1]= lb;
} } } for(i=0;i< 10;i++){ cout<<" %d ", b [i]; } cout<<"\n\n Langkah Perbandingan = %d \n Langkah Pertukaran = %d ",lb,lk; } int main(){ bubble(); getch(); }
int i,n,lb,ub; lb=0; cout<<"Masukkan banyak data yang ingin diurut: "; cin>>n; ub=n; cout<<"Masukkan data-datanya: \n\n"; for(i=1;i<=n;i++) { cout<<"\tdata ke- "<<i<<" : "; cin>>arr[i]; } quick_sort(arr,lb,ub); cout<<"\nHasil pengurutan data: "; for(i=0; i<n;i++) cout<<" "<<arr[i]; cout<<"\n\nTekan sembarang tombol untuk keluar "; getch(); }
while(data[i]<data[awal]) i=i+1;
else return j; } }
void quick_sort(int data[], int awal, int akhir) { int q; if(awal<akhir) { q=partisi(data,awal,akhir); quick_sort(data,awal,q); quick_sort(data, q+1,akhir); } } int main() { int i,j,n,data[100]; cout<<"Masukkan Banyak Data = ";cin>>n; for(i=1;i<=n;i++) { cout<<"data ke-"<<i<<" = ";cin>>data[i]; } cout<<"Data sebelum diurut : "<<endl; for(j=1;j<=n;j++) { cout<<data[j]<<" "; } quick_sort(data,1,n); //hasil pengurutan cout<<endl; cout<<endl; cout<<"Hasil Pengurutan :\n"; tampilkan_larik(data,n); getch();
cout<<"\n\nMasukkan data yang dicari: "; cin>>cari; tanda= cari_linear(array,ukuran,cari); if (tanda!=-1) cout<<"\n\nData tersebut ditemukan pada posisi: array["<<tanda<<"],"<<" atau deret ke-"<<(tanda+1); else cout<<"\nData tersebut tidak ditemukan "; getch(); } int cari_linear(int array[],int ukuran,int cari) { int tanda=-1; for(int i=0;i<ukuran;i++) { if(cari==array[i]) { tanda=i; break; } } return tanda; }
middle=(start + end ) / 2; do { if(elemen<array[middle]) end=middle-1; else if (elemen>array[middle]) start=middle+1; middle=(start+end)/2; } while(start<=end && array [middle]!=elemen); if(array[middle]==elemen) posisi=middle; return posisi; } Contoh 2 Binary search #include <iostream> #include <conio.h> using namespace std; int main() { //deklarasi variabel int a[10], i,j,k,tkr,top,bottom,middle,tm; //proses penginputan data for(i=0;i<10;i++) { cout<<"Data ke ["<<i<<"] = "; cin>>a[i]; } cout<<endl; cout<<"Masukkan data yang akan anda cari : "; cin>>k; //proses pengurutan data for(i=0;i<10;i++) { for(j=i+1;j<10;j++) { if (a[i]>a[j]) { tkr=a[i]; a[i]=a[j]; a[j]=tkr; } } } //proses pencarian data tm=0; top=9; bottom=0; while(top>=bottom) { middle=(top+bottom)/2; if(a[middle]==k) { tm++; } if(a[middle]<k) { bottom=middle+1; } else {
top=middle-1; } } if (tm>0) { cout<<"Data "<<k<<" yang dicari ada dalam array "; } //jika tidak ditemukan else { cout<<"Data tidak ditemukan dalam array"; } getch(); }