Script dan Penjelasan Binary Search pada C++

Share:

Script dan Penjelasan Binary Search pada C++


Kali ini saya akan membagikan tentang Bahasa pemrograman, lebih tepatnya C++ . Yang akan saya bahas adalah binary search. Seperti yang kita ketahui Binary search adalah metode pencarian suatu data atau elemen di dalam suatu array dengan kondisi data dalam keadaan terurut. Proses pencarian binary search hanya dapat dilakukan pada sekumpulan data yang sudah diurutkan terlebih dahulu. Jika terdapat N buah data yang akan diolah, data yang dicari akan dibandingkan dengan data ke-N jika data ke-N lebih besar dari data yang dicari maka akan dilakukan pembagian data menjadi dua bagian. Kemudian ujung data pada setiap bagian dibandingkan denngan nilai yang akan dicari. Lebih mudahnya yaitu proses pada binary search data harus diurutkan terlebih dahulu baru dibagi 2.
Untuk mengingat-ingat pencarian data ada 3 jenis, yaitu : Sequential search, Binary search, dan Interpolation search. Langsung saja berikut adalah script dari program binary search

Kode Program Binary Search

#include <iostream>
using namespace std;
#include <conio.h>
#include <iomanip>

int data[7] = {1, 8, 2, 5, 4, 9, 7};
int cari;

void selection_sort()
{
      int temp, min, i, j;

      for(i=0; i<7;i++)
      {
            min = i;
            for(j = i+1; j<7; j++)
            {
                  if(data[j]<data[min])
                  {
                        min=j;
                  }
            }
            temp = data[i];
            data[i]  = data[min];
            data[min] = temp;
      }
}




void binarysearch()
{
      //searching
      int awal, akhir, tengah, b_flag = 0;
      awal = 0;
      akhir = 7;
      while (b_flag == 0 && awal<=akhir)
      {
            tengah = (awal + akhir)/2;
            if(data[tengah] == cari)
            {
                  b_flag = 1;
                  break;
            }
            else if(data[tengah]<cari)
                  awal = tengah + 1;
            else
                  akhir = tengah -1;
      }

        if(b_flag == 1)
            cout<<"\nData ditemukan pada index ke-"<<tengah<<endl;
      else
            cout<<"\nData tidak ditemukan\n";
}

int main()
{
      cout<<"\t   'BINARY SEARCH'"<<endl;
      cout<<"\t====================="<<endl;
      cout<<"\nData           : ";
      //tampilkan data awal
      for(int x = 0; x<7; x++)
            cout<<setw(3)<<data[x];
      cout<<endl;

      cout<<"\nMasukkan data yang ingin Anda cari : ";
      cin>>cari;
      cout<<"\nData diurutkan : ";
      //urutkan data dengan selection sort
      selection_sort();
      //tampilkan data setelah diurutkan
      for(int x = 0; x<7;x++)
            cout<<setw(3)<<data[x];
   
      cout<<endl;
      
        binarysearch();

      _getche();
      return EXIT_SUCCESS;

 }

Kesimpulan
Pertama, disediakan beberapa data (berupa angka) yang nantinya akan dicari berdasarkan script di atas datanya adalah :  1  8  2  5  4  9  7.




Lalu, Masukkan bilangan berapa yang akan dicari, lalu tekan enter



Selanjutnya program akan mengurutkan data dari yang terkecil sampai yang terbesar terlebih dahulu, lalu mengeluarkan output posisi bilangan yang dicari.




Kode yang menunjukkan Program

void selection_sort()
{
      int temp, min, i, j;

      for(i=0; i<7;i++)
      {
            min = i;
            for(j = i+1; j<7; j++)
            {
                  if(data[j]<data[min])
                  {
                        min=j;
                  }
            }
            temp = data[i];
            data[i]  = data[min];
            data[min] = temp;
      }
}

void binarysearch()
{
      //searching
      int awal, akhir, tengah, b_flag = 0;
      awal = 0;
      akhir = 7;
      while (b_flag == 0 && awal<=akhir)
      {
            tengah = (awal + akhir)/2;
            if(data[tengah] == cari)
            {
                  b_flag = 1;
                  break;
            }
            else if(data[tengah]<cari)
                  awal = tengah + 1;
            else
                  akhir = tengah -1;
      }

        if(b_flag == 1)
            cout<<"\nData ditemukan pada index ke-"<<tengah<<endl;
      else
            cout<<"\nData tidak ditemukan\n";
}

Tengahberisi begin di bagi dua, jika berhasil maka  akan mencetak angka berada di posisi tengah+1 yang nantinya akan menunjukan angka berada pada index berapa.

Contoh Pembuatan Program

Menggunakan aplikasi visual studio 2010
  1. Pertama masukan kode program di atas.

     2. Lalu klik Run untuk menjalankan program






3. Tunggu sampai proses compile selesai dan menampilkan Command Prompt seperti berikut






Demikian yang saya bahas dalam artikel ini. semoga artikel ini dapat bermanfaat bagi para programmer-programmer yang ingin belajar dan mendalami bahasa permorgraman C++. saran saya yaitu tetap semangat jangan cepat bosan pada script dan terus mencoba. Terima kasihh...


1 komentar:

  1. Script Dan Penjelasan Binary Search Pada C++ - Zoro Tekno >>>>> Download Now

    >>>>> Download Full

    Script Dan Penjelasan Binary Search Pada C++ - Zoro Tekno >>>>> Download LINK

    >>>>> Download Now

    Script Dan Penjelasan Binary Search Pada C++ - Zoro Tekno >>>>> Download Full

    >>>>> Download LINK

    BalasHapus