字首樹的相關概念和增刪查實現

2022-06-11 06:15:11 字數 1017 閱讀 9189

又稱單詞查詢樹,trie樹,是一種樹形結構,是一種雜湊樹的變種。典型應用是用於統計,排序和儲存大量的字串(但不僅限於字串),所以經常被搜尋引擎系統用於文字詞頻統計。它的優點是:利用字串的公共字首來減少查詢時間,最大限度地減少無謂的字串比較,查詢效率比雜湊樹高。

它有3個基本性質:

根節點不包含字元,除根節點外每乙個節點都只包含乙個字元; 從根節點到某一節點,路徑上經過的字元連線起來,為該節點對應的字串; 每個節點的所有子節點包含的字元都不相同。

key:查詢次數跟樣本數量無關,跟要查詢的字串長度有關

【code】

public

class

trietree

}public

static

class

trie

public

void

insert(string str)

node.end++;

}public

void

delete(string str)

}node.end--;

}public

boolean

search(string word)

char chs =word.tochararray();

trienode node =root;

int index = 0;

for (int i = 0; i < chs.length; i++)

node =node.map[index];

}return node.end != 0;

}//字首str出現的次數

public

intprecount(string pre)

return

node.path;}}

}

鍊錶的增刪改查實現(遞迴與非遞迴實現)

1 鍊錶的概念 鍊錶是一種物理儲存單元上非連續 非順序的儲存結構。2 原理圖 3 增刪改查操作實現 遞迴 1 首先建立乙個node類 public class node 2 增刪改查 遞迴實現 增加 本例介紹在尾部插入 在增加的過程中,先找到最後乙個結點 next null 遞迴尋找 每增加乙個元素...

字首樹的簡單實現

1.字首樹 字首樹又稱為單詞查詢樹,是一種樹形的結構,用於儲存大量的字串,它的優點是 利用字串的公共字首來節約儲存空間 trie樹主要是利用詞的公共字首縮小查詞範圍 通過狀態間的對映關係避免了字元的遍歷,從而達到高效檢索的目的 2.可以先宣告乙個節點trienode,節點包括以下幾個屬性 trien...

CUDA實現平衡樹求字首和

應實驗要求,使用cuda實現平衡樹的字首求和演算法,很可惜只是做了乙個簡單的版本,沒有時間做更多的優化,在此記錄下來以後在進行深入優化。平衡樹求字首和的思想是使用邏輯上的樹形結構,先一次遍歷所有葉子節點實現相鄰的兩個節點相加,層層上播直到根節點。然後從根節點在執行一次向下的播送過程,最後所有的字首和...