數據結構複習小結3

查找

定義:在數據集合中尋找滿足條件的數據元素的過程爲查找。

1.查找某個特定的數據元素是否咋查找表中

2.檢索滿足條件的某個特定的數據元素的各種屬性

3.在查找表中插入一個數據元素

4.從查找表中刪除某個特定元素

靜態查找表:涉及步驟1.2

動態查找表:涉及插入或刪除的查找

關鍵字:在數據元素中唯一標識該元素的某個數據項的值

平均查找長度:查找過程中,一次查找的長度是指需要比較的關鍵字次數,平均查找長度是所有查找過程中進行關鍵字的比較次數的平均值。

-------順序查找

線性查找,主要用於在線性表中進行查找(無序和有序)

無序表:平均查找長度n+1/2;不成功的平均查找長度爲n+1;對數據的存儲沒有要求。

有序表:ASL不成功=n/2 +n/(n+1)

--------折半查找

   適合於線性表的順序存儲結構,有序。

樹高log(n+1)

ASL成功=log(n+1)-1

ASL失敗=

--------分塊查找

 索引順序查找,關鍵碼值;

平均查找長度:索引查找+塊內查找的平均長度 

               長度爲n的查找表均勻分爲b塊,每塊有s個記錄, ASL=L1+L2=(b+1)/2  +(s+1)/2   b=n/s

-------B樹和B+樹

B樹:多路平衡查找樹,樹中所有結點的孩子結點數的最大值稱爲B樹的階,m階B樹或爲空樹或爲滿足m叉樹

 滿足條件:樹中每個每個結點至多有m棵子樹(即至多含m-1個關鍵字),

                   若個根結點不是終端結點,則至少有倆棵子樹;

                   除根結點外的所有非葉結點至少有m/2棵子樹(m/2-1個關鍵字)

B樹的高度:n>=1,對任意一樹包含n個關鍵字、高度爲h,階數爲m的B樹;

  • 最多有m棵子樹,m-1個關鍵字,關鍵字個數應滿足n<=(m-1)*(1+m+m2+.....m^h-1)------h>=logm(n+1)
  • 關鍵字達到最少,h可達到最大。n+1>=2(m/2)^h-1,

B樹查找:樹上查找結點;結點內查找關鍵字

B+樹:

m階B+樹滿足條件:每個分支結點最多有m棵子樹(子結點);

                                非葉根結點至少有倆棵子樹,其他每個分支結點至少有m/2棵子樹;

                                結點的子樹個數與關鍵字個數相等;

                                 所有葉結點包含全部關鍵字及指向相應記錄的指針,葉結點中將關鍵字按大小順序排序,相互連接;

                                所有分支結點中包含各個子結點中關鍵字最大值及指向其子結點的指針。

--------散列(hash)表

散列函數:一個把查找表中的關鍵字映射成該關鍵字對應的地址函數,hash(key)=Addr(地址可以是數組下標,索引,內存地址

函數構造:定義域必須包含全部需要存儲的關鍵字,值域範圍依賴於散列表的大小或地址範圍;

                 計算出的地址應等概率,均勻分佈在地址空間,減少衝突(把兩種或以上的不同關鍵字映射到同一指針)

                 儘量簡單,在較短的時間內計算關鍵字對應的散列地址

  1. 直接地址法:直接取關鍵字的某個線性函數值爲散列地址--H(key)=a*key+b(a,b爲常數);計算簡單適合關鍵字的分佈基本連續情況。
  2. 除留餘數法:表長m取不大於m接近m的質數p ;H(key)=key%p
  3. 數字分析法:適用於已知關鍵字集合
  4. 平均取中法:取關鍵字的平均值的中間幾位作爲散列地址;適用於關鍵字的每一位取值不夠均勻或均勻小於散列地址所需的位數。
  5. 摺疊法:  適用於關鍵字位數很多,關鍵字中每一位上數字大於均勻時

處理衝突方法

  • 開放定址法:指可存放新表項的空間地址即向他的同義表項開放,有向他的非同義表項開放;H=(h(key)+d)%m(m爲表長,d爲增量)
  • 拉鍊法:把所有同義詞存儲在一個線性鏈表中;適用插入刪除操作

 k個互爲同義詞得關鍵字,線性探測法填入散列至少k(k+1) /2次探測

------字符串模式匹配

   定義:串的模式匹配,是求第一個字符串在第二個字符串中的位置。

 簡單模式匹配算法的最壞時間複雜度爲O(n*m) (n,m分別爲串長度)

改進模式匹配算法---KMP算法

O(m+n)  優點:主串不回溯。

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章