數組尋找之二分尋找-PHP

來源:互聯網
上載者:User

標籤:blog   function   utf-8   header   cti   index   har   log   func   

 1 <?php 2     //佈建要求頭 3     header("content-type:text/html;charset=utf-8"); 4  5     /* 6         二分差尋找: 7             源:數組 8             條件:必須是有序的資料,要麼從小到大,要麼從大到小 9             10     */11 12     $arr = array(1,2,3,4,5);13     14     /*15         @$arr                源數組16         @$arr_start_index    開始下標17         @$arr_end_index        結束下標18         @$number            要尋找的數19     */20     function search(&$arr, $arr_start_index, $arr_end_index, $number){21 22         //防止下標重合23         if($arr_start_index > $arr_end_index){24             echo ‘不存在改值‘;25             exit;26         }27         28         $arr_center_index = round( ($arr_start_index + $arr_end_index)/2 ); //向下取整29         30         if($arr[$arr_center_index] > $number){31             search($arr, $arr_center_index, $arr_end_index-1, $number);32         }33 34         else if($arr[$arr_center_index] < $number){35             search($arr, $arr_start_index+1, $arr_center_index, $number);        36         }37 38         else if($arr[$arr_center_index] == $number){39             echo ‘存在給值,該值在數組中的下標為:‘ . $arr_center_index;40             exit;41         }42 43         echo ‘不存在改值‘;44         exit;45     }46 47     search($arr, 0, 4,5);48 49 ?>

 

數組尋找之二分尋找-PHP

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.