<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    在希臘帕爾納斯山南坡上,有一個(gè)馳名世界的戴爾波伊神托所,在它的入口處的巨石上赫然銹刻著這樣幾個(gè)大字: 認(rèn)識(shí)你自己!

    像丁香花一樣靜靜的等待

       :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      21 隨筆 :: 2 文章 :: 32 評(píng)論 :: 0 Trackbacks

    ?? 從數(shù)組中查找特定數(shù)據(jù)的最簡(jiǎn)單辦法就是遍歷數(shù)組中所有的元素,這種查找方式稱(chēng)為線性查找。對(duì)于小型數(shù)組或者是沒(méi)有經(jīng)過(guò)排序的數(shù)組的可以采用這樣的辦法,對(duì)于已經(jīng)排序的數(shù)組可以采用高效的二叉查找算法。該算法查找數(shù)組中位于中間位置的元素,并將其與查找值比較,如果兩者相等就返回該元素的索引,否則將問(wèn)題化簡(jiǎn)為查找元素的一半來(lái)處理。

    ??? class ArrayFinder{

    ? public static void print(int[] array,int middle){
    ???? for(int i=0;i<array.length;i++){
    ??????? System.out.print(array[i]);
    ??????? if(i == middle)System.out.print("*");
    ??????? System.out.print(" ");
    ???? }
    ???? System.out.println();
    ? }
    ?
    ? public static int indexOf(int[] array,int value){
    ???? int low = 0;
    ???? int high = array.length-1;
    ???? int middle;
    ???? while(low <= high){
    ??????? middle = (low + high)/2;
    ??????? print(array,middle);
    ??????? if(array[middle] == value) return middle;
    ???????
    ??????? if(value < array[middle]) //要比較的值比中間值小
    ?????????? high = middle +1;
    ??????? else
    ?????????? low = middle - 1;
    ???? }
    ???? return -1;
    ? }
    ? public static void main(String[] args){
    ??? int[] array = new int[]{1,2,3,4,6,9,12};
    ??? System.out.println("location of 13: "+indexOf(array,4));
    ? }
    ?
    }

    Result :
    D:\jcode>javac ArrayFinder.java

    D:\jcode>java ArrayFinder
    1 2 3 4* 6 9 12
    location of 13: 3

    posted on 2007-03-02 12:04 dyin 閱讀(1522) 評(píng)論(4)  編輯  收藏

    評(píng)論

    # re: 數(shù)組的二叉查找算法【java description】 2007-06-09 03:14 蠶豆
    呵呵 不太理解 真是慚愧  回復(fù)  更多評(píng)論
      

    # re: 數(shù)組的二叉查找算法【java description】 2007-09-23 14:41 vvv
    把數(shù)組的查找算法 總結(jié)一下   回復(fù)  更多評(píng)論
      

    # re: 數(shù)組的二叉查找算法【java description】 2008-05-19 20:43 何維
    如果你這個(gè)能執(zhí)行出正確的結(jié)果,那就鬼見(jiàn)愁了。
    if(value < array[middle]) //要比較的值比中間值小
    high = middle +1;
    else
    low = middle - 1;
    應(yīng)改為
    if(value < array[middle]) //要比較的值比中間值小
    high = middle -1;
    else
    low = middle + 1;
      回復(fù)  更多評(píng)論
      

    # re: 數(shù)組的二叉查找算法【java description】[未登錄](méi) 2010-08-22 10:50 test
    這個(gè)是二分  回復(fù)  更多評(píng)論
      


    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 91亚洲国产成人精品下载| 亚洲午夜精品一级在线播放放| 亚洲电影免费在线观看| 成人无码视频97免费| 精品国产人成亚洲区| 中国内地毛片免费高清| 亚洲熟妇无码八AV在线播放| 免费在线观影网站| 亚洲AV无码AV男人的天堂| 免费一级不卡毛片| 久久水蜜桃亚洲av无码精品麻豆| 99re6在线精品视频免费播放 | 日韩精品视频在线观看免费| 人人狠狠综合久久亚洲高清| jizz免费在线影视观看网站| 国精无码欧精品亚洲一区| 8x成人永久免费视频| 亚洲国产系列一区二区三区| 日韩激情无码免费毛片| 51午夜精品免费视频| 亚洲成A人片777777| 四虎在线免费视频| 校园亚洲春色另类小说合集| 久久亚洲高清综合| 日韩精品无码一区二区三区免费| 亚洲国产精品久久丫| 日韩中文无码有码免费视频| 中美日韩在线网免费毛片视频| 久久精品国产精品亚洲蜜月| 91免费精品国自产拍在线不卡| 亚洲精品理论电影在线观看| 国产亚洲精品不卡在线| 222www免费视频| 风间由美在线亚洲一区| 情人伊人久久综合亚洲| 成年丰满熟妇午夜免费视频| 精品免费久久久久国产一区| 亚洲国产韩国一区二区| 久久亚洲精品中文字幕| 亚洲一区二区成人| 亚洲精品电影在线|