MASIGNASUKAv101
4958108837894100601

Mencari Nilai dari Beberapa Elemen Menggunakan Binary sort (Pada Apps NetBeans)

Mencari Nilai dari Beberapa Elemen Menggunakan Binary sort (Pada Apps NetBeans)
Add Comments
Thursday, March 21, 2019
java

Mencari Nilai dari Beberapa Elemen Menggunakan Binary sort (Pada Apps NetBeans)

Assalamualaikum wr.wb
      Hy sahabat calon programmer sejati, apakabar kalian saat ini? semoga kalian semua baik baik saja ya amien. Nah kali ini calon programer kembali lagi nih setelah beberapa minggu off dan sekarang kembali lagi buat menemani kalian dalam mengerjakan tugas ataupun belajar sendiri. Kali ini calon programer akan membahas bagaimana sih cara mencari bilangan yang berada ditengah tengan banyak nya bilangan lain dengan pencarian yang lebih singkat. nah caranya dengan memggunakan binary sort adalah salahsatu cara yang calon programer rekomendasiin loh . Mari kita simak penjelasannya.
        Binary sort ini adalah bentuk pencarian paling sederhana dan mudah, mungkin yang agak sulit adalah menghafal konsepnya, nah binary sort ini juga jika nilai yang akan kita cari belum berurutan maka kita harus mengurutkan nya terlebih dahulu, caranya kalalian bisa liat di artikel sebelumnya dan juga bisa menggunakan bubble sort ataupun selection sort. jika sudah kita urutkan kita tinggal masukan programnya, langsung saja kita ke contoh programnya:

Jika nilainya sudah berurutan 


//fungsi   
static int binary(int A[], int dicari){
        int i=0;
        int j=A.length-1;
        int k=0;
        boolean ketemu = false;
        while (!ketemu && i<=j){
            k=(i+j)/2;
            if (A[k] == dicari){
                ketemu=true;
            }
            else {
                if (A[k] == dicari){
                   j=k-1;
                }   
                else {
                    i=k+1;
                }
            }           
        }
        if (ketemu)
            return k;
        else
            return -1;
    }
    public static void main (String [] args){
        int A[]={2,4,6,7,9};
        for (int i=0; i<A.length; i++){
        System.out.print(A[i]+",");
    }
        int dicari=6;
       int elemen = binary(A,dicari);
            System.out.println("nilai "+dicari+" ditemukan di  elemen ke-"+elemen);
    }
//prosedure
    static void  binary(int A[], int dicari){
        int i=0;
        int j=A.length-1;
        int k=0;
        boolean ketemu = false;
        while (!ketemu && i<=j){
            k=(i+j)/2;
            if (A[k] == dicari){
                ketemu=true;
            }
            else {
                if (A[k] == dicari){
                   j=k-1;
                }   
                else {
                    i=k+1;
                }
            }           
        }
        if (ketemu)
            System.out.println("nilai ditemukan di  elemen ke-"+ketemu);
        else
             System.out.println("maaf nilai belum ada");
    }
    public static void main (String [] args){
        int A[]={2,4,6,7,9};
        for(int i=0; i<A.length; i++){
            System.out.print(A[i]+",");
        }
        int dicari=2;
        binary(A,dicari);
    }   

jika belum berurutan kalian harus urutkan dulu dengan bubble ataupun selection


     static int binary(int A[], int dicari){

      

        for(int i=0;i<A.length;i++){

            for(int j=0;j<A.length-i-1;j++){

                if (A[j]>A[j+1]){

                    int temp = A[j];

                    A[j]=A[j+1];

                    A[j+1] = temp;

                  

                }

            }

       

        }   

          for (int i=0;i<A.length;i++){

            System.out.print(A[i]+",");

           

        }

        int i=0;

        int j=A.length-1;

        int k=0;

        boolean ketemu = false;

        while (!ketemu && i<=j){

            k=(i+j)/2;

            if (A[k] == dicari){

                ketemu=true;

            }

            else {

                if (A[k] == dicari){

                   j=k-1;

                }   

                else {

                    i=k+1;

                }

            }           

        }

        if (ketemu)

            return k;

        else

            return -1;

    }

    public static void main (String [] args){

        int A[]={7,9,6,2,4};

        for (int i=0; i<A.length; i++){

        System.out.print(A[i]+",");

    }

        System.out.println();

        int dicari=6;

       int elemen = binary(A,dicari);



            System.out.println("nilai "+dicari+" ditemukan di  elemen ke-"+elemen);

    }

Trimakasih, jangan lupa share ya teman
Wassalamualaikum
Riefqi

Saya adalah salah satu mahasiswa yang ingin berbagi ilmu seputar pemrograman dan saya harap bisa bermanfaat amin