Shelsort
Shelsort
HOME › DEV-CPP
Program metode shell sort c++ dikembangkan oleh Donald L. Shell pada tahun 1959.
Pada algoritma shell sort c++ ini jarak antara dua elemen yang dibandingkan dan
ditukarkan. Secara singkat metode ini dijelaskan sebagai berikut. Pada langkah
pertama, kita ambil elemen pertama dan kita bandingkan dengan elemen jarak tertentu
dari elemen pertama tersebut.
Kemudian elemen yang kedua kita bandingkan dengan elemen yang lain dengan jarak
yang sama seperti jarak seperti diatas. Demikian seterusnya sampai seluruh elemen
dibandingkan. Masih pada langkah kedua, proses program pngurutan shell sort diulang
dengan langkah yang lebih kecil, kemudian pada langkah ketiga jarak tersebut diperkecil
lagi seluruh proses dihentikan jika jarak sudah sama dengan satu.
Baca Juga
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
//Deklarasi variabel
int val[100];
int i, n, t;
//Input
cout<<endl;
cout<<"\n\t\t\tPengurutan Menaik Metode Shell Shot \n\n\n";
cout<<"Masukkan Jumlah Data yg ingin di urutkan : ";cin>>n;
cout<<endl;
for(i = 0; i < n; i++)
{
cout<<"Nilai ke-"<<1+i<<" : ";cin>>val[i];
}
//Shell Sort
for(int w = n/2; w > 0;w=w/2)
{
for(int x = w; x < n; x++)
{
for (int y = x-w; y >= 0; y-=w)
{
if(val[y+w] < val[y]) //Note
{
t=val[y+w];
val[y+w]=val[y];
val[y]=t;
}
}
}
}