Turkhackteam.net/org - Turkish Hacking & Security Platform  
Geri git   Turkhackteam.net/org - Turkish Hacking & Security Platform >
Programlama
> Java

Java Object Oriented Programming temeline dayanan, çok işlevli, step by step işleyen dilin dökümanlarının paylaşım alanı.




Java ile Statik Dizilerde İkili Arama Metotları

Java

Yeni Konu aç Cevapla
 
Seçenekler
Alt 07-02-2015 14:36   #1
  • Yarbay
  • Üye Bilgileri
Üyelik tarihi
04/2012
Nereden
STUB
Yaş
22
Mesajlar
Konular

Teşekkür (Etti): 1317
Teşekkür (Aldı): 893


Java ile Statik Dizilerde İkili Arama Metotları




Bu derste statik dizideki elemanı binary search (ikili arama) metoduyla bulma metotlarına göz atacağız.

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;
    }
}



 Offline  
 
Alıntı ile Cevapla
Cevapla

Bookmarks

Seçenekler


Bilgilendirme Turkhackteam.net/org
Sitemizde yer alan konular üyelerimiz tarafından paylaşılmaktadır.
Bu konular yasalara uygunluk ve telif hakkı konusunda yönetimimiz tarafından kontrol edilse de, gözden kaçabilen içerikler yer alabilmektedir.
Bu tür konuları turkhackteamiletisim [at] gmail.com mail adresimize bildirebilirsiniz, konular hakkında en kısa sürede gerekli işlemler yapılacaktır.
Please Report Abuse, DMCA, Harassment, Scamming, Warez, Crack, Divx, Mp3 or any Illegal Activity to turkhackteamiletisim [at] gmail.com

Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz.
Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.



         

Powered by vBulletin® Copyright ©2000 - 2019

TSK Mehmetçik Vakfı

Türk Polis Teşkilatını Güçlendirme Vakfı

Google+

web tasarım

wau