php陣列中二分查詢是什麼
1.定義
二分查詢也稱折半查詢(Binary Search),它是一種效率非常高效的查詢方法。但是折半查詢要求線性表必須採用順序儲存結構,而且表中元素按關鍵字有序排列。
2. 優缺點
優點是比較次數少,查詢速度快,平均效能好;
其缺點是要求待查表為有序表,且插入刪除困難。
因此折半查詢方法適用於不經常變動而查詢頻繁的有序列表。
3.例項
#include<stdio.h> #include<iostream> using namespace std; int main(){ int a[100];//注意這裡的陣列下標,即a[0]=1,a[1]=2……a[99]=100 int guess;//猜測字元 int flag=0;//設定標誌位,區分是否查詢成功 int count=0;//統計比較次數 int low=0,mid,high=99; //初始化 cout<<"1、初始化"<<endl; for(int i=0;i<100;i++){ a[i]=i+1; } cout<<"2、要查詢的數字"<<endl; cout<<"guess:"; cin>>guess; cout<<"3、二分查詢"<<endl; //二分查詢 while(low<=high){ count++; mid=(low+high)/2; cout<<"第"<<count<<"次查詢,其中low="<<low<<" high="<<high<<" mid="<<mid<<endl; if(guess==a[mid]){ flag=1; cout<<"success!比較次數:"<<count<<"次"<<endl; break;//查詢成功就退出,如果想要繼續查詢也是可以的 } if(guess>a[mid]){ low=mid+1; } if(guess<a[mid]){ high=mid-1; } } if(flag==0) cout<<"fail!"<<endl; }
以上就是php陣列中二分查詢的基本介紹,相信大家對於這種查詢方法,還是有很多使用的需求的。在接下來的學習中,我們會帶來更多有關二分查詢的內容,大家可以關注一下。更多php學習指路:
推薦作業系統:windows7系統、PHP5.6、DELL G3電腦
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2236/viewspace-2830802/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PHP中二維陣列與多維陣列PHP陣列
- 【Java】陣列二分查詢元素Java陣列
- java的Collections中二分查詢原始碼分析Java原始碼
- java稀疏陣列是什麼Java陣列
- 陣列的查詢(搜尋):線性查詢和二分法查詢陣列
- PHP 陣列搜尋 sdk & 陣列分頁PHP陣列
- 二維陣列查詢陣列
- JavaFX教程-查詢陣列Java陣列
- 有序陣列1 2 3 4 5 6 7 8 9查詢3的二分查詢序列是陣列
- 【劍指offer】二分查詢二維陣列陣列
- 從一個無序陣列中查詢最大值的最快演算法是什麼?陣列演算法
- JavaScript --二維陣列查詢一維陣列JavaScript陣列
- PHP二分查詢PHP
- 陣列的主元素查詢陣列
- Java陣列排序和查詢Java陣列排序
- js查詢陣列元素位置JS陣列
- 陣列使用find查詢用法陣列
- 查詢快捷鍵ctrl加什麼 wordexcel表格查詢快捷鍵是ctrl和什麼Excel
- 什麼是並行查詢及其原理並行
- C語言中陣列溢位是什麼C語言陣列
- java陣列回顧---線性查詢最大值最小值---二分查詢Java陣列
- 微策略面試題:在旋轉後的陣列中查詢元素(二分查詢)面試題陣列
- 二維陣列中的查詢陣列
- MongoDB之資料查詢(陣列)MongoDB陣列
- 陣列中查詢給定值陣列
- 查詢提示;及重排陣列分析陣列
- php通過陣列存取mysql查詢語句的返回值PHP陣列MySql
- 查詢演算法集:順序查詢、二分查詢、插值查詢、動態查詢(陣列實現、連結串列實現)演算法陣列
- 圖解:什麼是旋轉陣列(Rotate Array)?圖解陣列
- excel查詢快捷鍵是什麼 excel表格怎麼快速查詢Excel
- 什麼是PHPPHP
- 二分查詢【折半查詢】演算法 PHP 版演算法PHP
- PHP 實現二分查詢PHP
- Laravel 查詢資料庫欄位內容是 Json 陣列時的查詢語句Laravel資料庫JSON陣列
- MYSQL A、B表陣列關聯查詢MySql陣列
- MongoDB(12)- 查詢嵌入文件的陣列MongoDB陣列
- 【JZOF】二維陣列中的查詢陣列
- Javascript刷題 》 查詢陣列元素位置JavaScript陣列