Sorting + Binary Search

Wednesday, January 16, 2013
Pada postingan sebelumnya, saya sudah menjelaskan mengenai binary search. Kali ini saya akan sedikit share mengenai implementasi binary search dengan data yang telah disorting...

Berikut adalah contoh programnya :

public class BinarySearch {
    static int[]sort(int[]data){
        int temp=0;
        for(int i=0;i
<data.length;i++){ 
            for(int j=i+1;j<data.length;j++){
                if(data[j] < data[i]){
                    temp=data[j];
                    data[j]=data[i];
                    data[i]=temp;
                }
            }
            System.out.println("data index ke ["+i+"] = "+data[i]);
        }
        return data;
    }
    static int binarySearch(int[]arrNilai, int cari){
        int data[]=sort(arrNilai);
        int BBawah=0;
        int BAtas=data.length-1;
        int BTengah=0;
        boolean ketemu=false;

        while(!ketemu){
            BTengah=(BBawah+BAtas)/2;
            if(BBawah>BAtas){
                System.out.println(cari+" tidak ditemukan");
                break;
            }else{
                if(cari==data[BTengah]){
                    System.out.println(cari+" ditemukan pada index ke ["+BTengah+"]");
                    ketemu=true;
                }else if(cari < data[BTengah]){
                    BAtas=BTengah-1;
                }else if(cari > data[BTengah]){
                    BBawah=BTengah+1;
                }
            }
        }
        return BTengah;
    }
    public static void main(String[]args){
        int data[]={11,2,13,43,50,16,7,18,19,10};
        binarySearch(data,13);
    }
}


Output :

data index ke [0] = 2
data index ke [1] = 7
data index ke [2] = 10
data index ke [3] = 11
data index ke [4] = 13
data index ke [5] = 16
data index ke [6] = 18
data index ke [7] = 19
data index ke [8] = 43
data index ke [9] = 50
13 ditemukan pada index ke [4]

Share this :

Previous
Next Post »
0 Komentar

Penulisan markup di komentar
  • Silakan tinggalkan komentar sesuai topik. Komentar yang menyertakan link aktif, iklan, atau sejenisnya akan dihapus.
  • Untuk menyisipkan kode gunakan <i rel="code"> kode yang akan disisipkan </i>
  • Untuk menyisipkan kode panjang gunakan <i rel="pre"> kode yang akan disisipkan </i>
  • Untuk menyisipkan quote gunakan <i rel="quote"> catatan anda </i>
  • Untuk menyisipkan gambar gunakan <i rel="image"> URL gambar </i>
  • Untuk menyisipkan video gunakan [iframe] URL embed video [/iframe]
  • Kemudian parse kode tersebut pada kotak di bawah ini
  • © 2015 Simple SEO ✔

Ads