複製鏈接
請複製以下鏈接發送給好友

懶惰刪除

鎖定
在計算機科學中,懶惰刪除(英文:lazy deletion)指的是從一個散列表(也稱哈希表)中刪除元素的一種方法。在這個方法中,刪除僅僅是指標記一個元素被刪除,而不是整個清除它。被刪除的位點在插入時被當作空元素,在搜索之時被當作已佔據。
中文名
懶惰刪除
外文名
lazy deletion
類    別
計算機

目錄

懶惰刪除原理

當刪除一個元素時,ISBF需要調整其他元素的片外索引值,並重新構建所有片上CBF,這將導致其刪除開銷高,難以支持動態變化的元素集.為了降低ISBF的刪除開銷,本文提出了一-種懶惰刪除(lazy deletion) 算法,其核心思想是:採用一個片,上刪除位圖,用於記錄片外元素的狀態,即0表示未刪除狀態, 1表示刪除狀態;當刪除元素x時,在刪除位圖中設置x的狀態位為1, 並從每組並行CBF中刪除r,保持其他元素的片外索引值不變 [1] 

懶惰刪除示例

// javascript
var myarr=["frist","2nd","3rd","4th"];
delete myarr[2]; // 刪除第3個 "3rd"
console.info(myarr);// 輸出
0: "frist"
1: "2nd"
3: "4th"
注意1後面是3
  這時,如果檢測數組長度,由於是懶惰刪除,因此 [2] 
console.info(myarr.length);
結果為4。
參考資料
  • 1.    黃昆,張大方.一種面向深度數據包檢測的索引拆分Bloom過濾器[J].中國科學:信息科學,2010,40(08):1062-1077.
  • 2.    懶惰刪除  .course.2010-06-02[引用日期2018-07-16]