Java ile Statik Dizilerde İkili Arama Metotları

Ahbap

Harbi Üye
Forum Üyesi
Katılım
29 Mayıs 2019
Mesajlar
8,562
Tepkime puanı
2
Kod:
public class İkiliArama {
//Eşitliği Sağlamayan İkili Arama
    public static int binarySearch(int target,int[] dizi){
        int bottom = 0;
        int top = dizi.length-1;
        int middle;
        while(bottom < top){
            middle = (bottom+top)/2;
            if(dizi[middle] < target){
                bottom = middle+1;
            }
            else
                top = middle;
        }
        if(top < bottom){
            return -1;
        }
        else{
            if(dizi[bottom] == target)
                return bottom;
            return -1;
        }
    }
    //Eşitliği Sağlayan İkli Arama
    public static int binarySearch2(int target,int[] dizi){
        int bottom = 0;
        int top = dizi.length-1;
        int middle = 0;
        boolean found = false;
        while(found == false && bottom <= top){
            middle = (bottom+top)/2;
            if(dizi[middle] == target){
                found = true;
            }
            else if(dizi[middle] < target){
                bottom = middle+1;
            }
            else
                top = middle-1;
        }
        if(found)
            return middle;
        else
            return -1;
    }
    //Eşitliği Sağlayan Recursive İkili Arama
    public static int binarySearch3(int target,int dizi[],int bottom,int top){
        int middle;
        if(bottom < top){
            middle = (bottom+top)/2;
            if(dizi[middle] == target)
                return middle;
            else if(dizi[middle] < target){
                return binarySearch3(target, dizi, middle+1, top);
            }
            else
                return binarySearch3(target, dizi, bottom, middle-1);
        }
        else
            return -1;
    }
}
 

Benzer konular

SiyahLi

Harbi Üye
Forum Üyesi
Katılım
2 Mayıs 2020
Mesajlar
3,500
Tepkime puanı
8
Takım
Beşiktaş
Teşekkürler
 

Nutella

Harbi Üye
Bayan Üye
Özel Üye
Katılım
2 Ocak 2021
Mesajlar
9,432
Tepkime puanı
8
Cinsiyet
  1. Bayan
Takım
Galatasaray
Paylaşım için teşekkürler.
 
İçerik sağlayıcı "paylaşım" sitelerinden biri olan Harbimekan.Com Forum, Eğlence ve Güncel Paylaşım Platformu Adresimizde 5651 Sayılı Kanun’un 8. Maddesine ve T.C.K’nın 125. Maddesine göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur. Harbimekan.Com sitesindeki konular yada mesajlar hakkında yapılacak tüm hukuksal Şikayetler için info@harbimekan.com yada iletişim sayfası üzerinden iletişime geçilmesi halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 3 Gün (72 Saat) içerisinde Forum yönetimi olarak tarafımızdan gereken işlemler yapılacaktır.

Bu Site, Bilim ve Sağlık Haber Ajansı Üyesidir.

Yığıntı - 8kez - kaynak mağazam - Uğur Ağdaş