Sorting

Selection sort

Pengertian Selection sort adalah salah satu cara pengurutan yang sederhana dari algoritma. Maksudnya melakukan proses pass untuk menyeleksian elemen struktur data. Untuk sorting ascending (menaik), elemen yang terkecil di antara elemen-elemen yang tidak berurutan, disimpan indeksnya, lalu dilakukan proses pertukaran nilai elemen dengan indeks yang disimpan dengan elemen yang paling depan yang tidak berurut. kebaliknya, untuk sorting descending (menurun), elemen yang terbesar yang disimpan indeksnya kemudian ditukar.

Contoh Program Selection sort:
#include
using namespace std;

int main()
{
       int a, k, c, d, g;
       k = 10;
       int b[10];
       printf("\t      =========================================================\n");
       printf("\t      |                 JALURBELAKANG.BLOGSPOT.COM            |\n");
       printf("\t      =========================================================\n");
       printf("\t      |                   PROGRAM SELECTION SORT              |\n");
       printf("\t      |=======================================================|\n");
       printf("\t      |                                                       |\n");
       printf("\t      | >Ricky satria                      (140010039)        |\n");
       printf("\t      |                                                       |\n");
       printf("\t      |                                                       |\n");
       printf("\t      |                 Compiled With Visual Studio           |\n");
       printf("\t      |========================================================\n");
       printf("\t      |                         BA141                         |\n");
       printf("\t      |           Sistem Komputer - STIKOM BALI               |\n");
       printf("\t      =========================================================\n");
       printf("\t      |               Press Any Key To Continue               |\n");
       printf("\t      =========================================================\n");
       printf("\t      "); getchar();

       system("cls");

       for (a = 0; a
       {
              cout << "Masukkan nilai " << a + 1 << " : "; cin >> b[a];
       }
       for (a = 0; a
       {
              c = a;
              for (d = a + 1; d
              {
                     if (b[c]
                     {
                           c = d;
                     }
              }
              g = b[c];
              b[c] = b[a];
              b[a] = g;
       }
       cout << "\n setelah disorting akan menjadi : \n";
       for (a = 0; a
       {
              cout << b[a] << " \n";
       }
       system("pause");
       return 0;
}

Hasil Program:


Insertion sort

Insertion sort adalah salah satu cara pengurutan data dengan menaruh setiap elemen data pada posisi yang benar dengan cara melakukan perbandingan dengan data – data yang ada. prinsip algoritma dari cara insertion sort ini dapat di ibaratkan sama seperti mengurutkan abjad, dimana jika suatu abjad dipindah tempatkan ke posisi sebenarnya, maka abjad yang lain akan bergeser mundur atau maju sesuai kondisi pemindahanan abjad tersebut. diproses pengurutan data, cara ini dipakai untuk menjadikan bagian sisi kiri array berurutan sampai dengan seluruh array diurutkan dengan benar.

Contoh Program Insertion sort:
#include
#include
using namespace std;
int data[10], data2[10];
int n;

void tukar(int a, int b)
{
       int t;
       t = data[b];
       data[b] = data[a];
       data[a] = t;
}

void insertion_sort()
{
       int temp, i, j;
       for (i = 1; i <= n; i++)
       {
              temp = data[i];
              j = i - 1;
              while (data[j]>temp && j >= 0)
              {
                     data[j + 1] = data[j];
                     j--;
              }
              data[j + 1] = temp;
       }
}
int main()
{
printf("\t      =========================================================\n");
       printf("\t      |                 JALURBELAKANG.BLOGSPOT.COM            |\n");
       printf("\t      =========================================================\n");
       printf("\t      |                   PROGRAM INSERTION SORT              |\n");
       printf("\t      |=======================================================|\n");
       printf("\t      |                                                       |\n");
       printf("\t      | >Ricky satria                      (140010039)        |\n");
       printf("\t      |                                                       |\n");
       printf("\t      |                                                       |\n");
       printf("\t      |                   Compiled With Visual Studio         |\n");
       printf("\t      |========================================================\n");
       printf("\t      |                         BA141                         |\n");
       printf("\t      |           Sistem Komputer - STIKOM BALI               |\n");
       printf("\t      =========================================================\n");
       printf("\t      |               Press Any Key To Continue               |\n");
       printf("\t      =========================================================\n");
       printf("\t      "); getchar();

       system("cls");

       cout << "Masukkan Jumlah Data : ";
       cin >> n;
       cout << "\n";
       for (int i = 1; i <= n; i++)
       {
              cout << "Masukkan data ke " << i << " : ";
              cin >> data[i];
              data2[i] = data[i];
       }

       insertion_sort();

       cout << "\n\n";
       //tampilkan data
       cout << "Data Setelah di insertion Sort : ";
       for (int i = 1; i <= n; i++)
       {
              cout << " " << data[i];
       }
       cout << "\n\nSorting Selesai\n";
       getchar();
       system("pause");
}

Hasil Program :


Sekian penjelasan tentang Sorting jika ada yang kurang dimengerti silakan bertanya di kolom komentar.


Sumber referensi:
Data struktur using c++ course technology
Materi Struktur Data ppt pertemuan ke (III)

Post a Comment

 
Top