Trie樹 字典樹的簡介及實現

2021-05-25 03:26:23 字數 1044 閱讀 5662

trie,又稱字典樹、單詞查詢樹,是一種樹形結構,用於儲存大量的字串。它的優點是:利用字串的公共字首來節約儲存空間。

相對來說,trie樹是一種比較簡單的資料結構.理解起來比較簡單,正所謂簡單的東西也得付出代價.故trie樹也有它的缺點,trie樹的記憶體消耗非常大.當然,或許用左兒子右兄弟的方法建樹的話,可能會好點.

其基本性質可以歸納為:

1. 根節點不包含字元,除根節點外每乙個節點都只包含乙個字元。

2. 從根節點到某一節點,路徑上經過的字元連線起來,為該節點對應的字串。

3. 每個節點的所有子節點包含的字元都不相同。

其基本操作有:查詢 插入和刪除,當然刪除操作比較少見.我在這裡只是實現了對整個樹的刪除操作,至於單個word的刪除操作也很簡單.

搜尋字典專案的方法為:

(1) 從根結點開始一次搜尋;

(4) 迭代過程……

/*name: trie樹的基本實現

author: maik

description: trie樹的基本實現 ,包括查詢 插入和刪除操作(衛星資料可以因情況而異)

*/#include

#include

using namespace std;

const int sonnum=26,base='a';

struct trie

;trie *newtrie()// create a new node

void insert(trie *pnt,char *s,int len)// insert a new word to trie tree

temp->terminal=true;

}void delete(trie *pnt)// delete the whole tree

}trie* find(trie *pnt,char *s,int len)//trie to find the current word

Trie樹 字典樹的簡介及實現

trie,又稱字典樹 單詞查詢樹,是一種樹形結構,用於儲存大量的字串。它的優點是 利用字串的公共字首來節約儲存空間。相對來說,trie樹是一種比較簡單的資料結構.理解起來比較簡單,正所謂簡單的東西也得付出代價.故trie樹也有它的缺點,trie樹的記憶體消耗非常大.當然,或許用左兒子右兄弟的方法建樹...

Trie樹 字典樹的簡介及實現

trie,又稱字典樹 單詞查詢樹,是一種樹形結構,用於儲存大量的字串。它的優點是 利用字串的公共字首來節約儲存空間。相對來說,trie樹是一種比較簡單的資料結構.理解起來比較簡單,正所謂簡單的東西也得付出代價.故trie樹也有它的缺點,trie樹的記憶體消耗非常大.當然,或許用左兒子右兄弟的方法建樹...

Trie樹 字典樹的簡介及實現

trie,又稱字典樹 單詞查詢樹,是一種樹形結構,用於儲存大量的字串。它的優點是 利用字串的公共字首來節約儲存空間。相對來說,trie樹是一種比較簡單的資料結構.理解起來比較簡單,正所謂簡單的東西也得付出代價.故trie樹也有它的缺點,trie樹的記憶體消耗非常大.當然,或許用左兒子右兄弟的方法建樹...