数据结构之查找算法:顺序查找
生活随笔
收集整理的這篇文章主要介紹了
数据结构之查找算法:顺序查找
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
查找算法:順序查找
- 思維導(dǎo)圖:
- 順序查找的定義:
- 順序查找的代碼實(shí)現(xiàn):
- 順序查找的性能:
思維導(dǎo)圖:
順序查找的定義:
順序查找的代碼實(shí)現(xiàn):
typedef struct { //查找表數(shù)據(jù)結(jié)構(gòu)int *elem; //動態(tài)數(shù)組基地址int TableLen; //表長}SSTable; int Search_Seq(SSTable st,int key){st.elem[0] = key; //哨兵,當(dāng)沒有查找到時返回0 for(int i=st.TableLen;st.elem[i]!=key;i--){} return i; //返回0:查找失敗}順序查找的性能:
查找表有序時:
查找表無序時:
ps:
1、若成功節(jié)點(diǎn)有n個,那失敗節(jié)點(diǎn)有n+1個
2、假設(shè)每個節(jié)點(diǎn)的查找概率相同,則查找失敗的概率為1 / n+1
3、此時lj表示層數(shù),查找25失敗時就會到達(dá)[20,30]這個區(qū)間,即第四層,但實(shí)際只比較了三次,查找到了第三層
總結(jié)
以上是生活随笔為你收集整理的数据结构之查找算法:顺序查找的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Rust初步(三):使用atom搭配ra
- 下一篇: WebService 的创建,部署和使用