Ada beberapa macam metode sorting pada Pemrograman C++, yaitu :
1. Bubble Sort
2. Exchange Sort
3. Search Sort
4. Shell Sort
5. Merge Sort
6. Dll.
Shell Sort itu sendiri memiliki arti yaitu suatu pengurutan data algoritma yang lebih handal daripada metode pengurutan yang lainnya. Dan penemu metode pengurutan ini adalah Donald Shell.
Kehandalan pengurutan shell sort ini, yaitu dalam metode ini akan di bagi menjadi dua bagian dan setiap bagian tersebut akan diurutkan menggunakan bubble sort.
Tanpa basa-basi lagi, Langsung aja nih codingnya gan :D
#include <iostream.h>
#include <conio.h>
using namespace std;
int shell(int a[],int n)
{
int j,i,k,m,l,mid;
for(m=n/2; m>0; m=m/2)
{
for(j=m; j< n; j++)
{
for(i=j-m; i>=0; i=i-m)
{
if(a[i]<=a[i+m])
{
cout<<"\n\n"<<a[i]<<"\t >\t "<<a[i+m];
cout<<"\t-->\tTidak Ada Penukaran";
break;
}
else
{
cout<<"\n\n"<<a[i]<<"\t >\t "<<a[i+m];
mid = a[i];
a[i] = a[i+m];
a[i+m] = mid;
cout<<"\t-->\tTerjadi Pertukaran \t: "<<a[i]<<" Dengan "<<a[i+m];
cout<<endl<<endl<<"Kondisi Array Setelah Penukaran : ";
for(l=0; l<n; l++)
{
cout<<" "<<a[l];
}
}
}
}
}
}
int main()
{
int data[16]={80,32,38,19,36,45,21,16,12,6,40,7,72,90,50,15},i;
cout<<"\nData Sebelum Sorting \t: ";
for(i=0;i<15;i++)
{
cout<<data[i]<<" ";
}
shell(data,15);
cout<<"\n\n\n\nArray Sesudah Sorting \t: ";
for(i=0;i<15;i++)
{
cout<<data[i]<<" ";
}
getch();
}
Semoga artikel ini bermanfaat :D
dan jangan lupa follow blog gw ya gan :D
1. Bubble Sort
2. Exchange Sort
3. Search Sort
4. Shell Sort
5. Merge Sort
6. Dll.
Shell Sort itu sendiri memiliki arti yaitu suatu pengurutan data algoritma yang lebih handal daripada metode pengurutan yang lainnya. Dan penemu metode pengurutan ini adalah Donald Shell.
Kehandalan pengurutan shell sort ini, yaitu dalam metode ini akan di bagi menjadi dua bagian dan setiap bagian tersebut akan diurutkan menggunakan bubble sort.
Tanpa basa-basi lagi, Langsung aja nih codingnya gan :D
#include <iostream.h>
#include <conio.h>
using namespace std;
int shell(int a[],int n)
{
int j,i,k,m,l,mid;
for(m=n/2; m>0; m=m/2)
{
for(j=m; j< n; j++)
{
for(i=j-m; i>=0; i=i-m)
{
if(a[i]<=a[i+m])
{
cout<<"\n\n"<<a[i]<<"\t >\t "<<a[i+m];
cout<<"\t-->\tTidak Ada Penukaran";
break;
}
else
{
cout<<"\n\n"<<a[i]<<"\t >\t "<<a[i+m];
mid = a[i];
a[i] = a[i+m];
a[i+m] = mid;
cout<<"\t-->\tTerjadi Pertukaran \t: "<<a[i]<<" Dengan "<<a[i+m];
cout<<endl<<endl<<"Kondisi Array Setelah Penukaran : ";
for(l=0; l<n; l++)
{
cout<<" "<<a[l];
}
}
}
}
}
}
int main()
{
int data[16]={80,32,38,19,36,45,21,16,12,6,40,7,72,90,50,15},i;
cout<<"\nData Sebelum Sorting \t: ";
for(i=0;i<15;i++)
{
cout<<data[i]<<" ";
}
shell(data,15);
cout<<"\n\n\n\nArray Sesudah Sorting \t: ";
for(i=0;i<15;i++)
{
cout<<data[i]<<" ";
}
getch();
}
Semoga artikel ini bermanfaat :D
dan jangan lupa follow blog gw ya gan :D
Written by: Wahyudi Nugroho
WN UPDATE, Updated at: 04:58
Ditulis Oleh : Unknown | WN Update
Terima Kasih Sudah Membaca Artikel Shell Sort C++. Jangan lupa klik +1 dan like artikel ini, dan Sobat juga diperbolehkan mengcopy-paste atau menyebar-luaskan artikel ini, namun jangan lupa untuk meletakkan link dibawah ini sebagai sumbernya
0 komentar:
Post a Comment