給定乙個值k,在含有n個記錄的表中找出關鍵字等於k的記錄。若找到則返回該記錄的的位置或資訊,否則查詢失敗,返回相關的指示資訊。
(一)順序查詢
思路:
元素沒有順序,因此要掃瞄整個陣列中的所有元素,逐個與k比較
相等則查詢成功,返回該元素位置
如果掃瞄結束沒有發現和k相等的元素,返回0
int search(int a,int n,int k)
}return
0;}
(二)折半查詢
要求:
1.線性表必須是有序的
思路:
1.先確定要查詢的區間a[low,high]
2.確定中間位置mid
3.將要查詢的元素k與中間位置元素a[mid]做比較,若查詢成功則返回該位置,否則重新確定查詢區間
4.若a[mid]>k,則由表的有序性可知a[mid,…,high]均大於k,若表中存在關鍵字等於k的記錄,則該記錄只能在mid的左邊,即a[low,…mid-1]
5.同理,若a[mid]
int bsearch(int a,int low,int high,int k)else
if(a[mid] > k) else
}return
0;}
注:**已通過測試 nodejs 牛刀小試
目前在做乙個使用者登入驗證的案例 真是彎路 彎路 再彎路啊 不多說上 用到的模板 express 資料庫mysql 使用者校驗 socket.on judgeuser function nickname function err1,rows if rows.length 0 else 使用者註冊 s...
dynamic 牛刀小試
今天在網上看帖時看到了這樣乙個問題 現在我用反射 personmodel.dll 呼叫乙個型別方法 getallpersons 返回person,其中person為 personmodel.dll 在定義,請問,我要怎麼操作才能取回返回的陣列值呢?恰好手頭沒事做,就順手寫了乙個demo,但在獲取到結...
WebPack牛刀小試
現在頁面的功能和需求越來越複雜,繁複雜亂的j ascript 和一大堆的依賴包都需要包含在前端頁面中。如果還用手動處理就有點像在現代戰場上使用小公尺加步槍的味道了。為了減小開發的複雜度,前端社群湧現出了層出不窮的實踐方案,比如typescript擴充套件語言 scss less類的css預處理器,還...