(戀上資料結構筆記) 字典樹 Trie

2021-10-11 03:26:07 字數 1485 閱讀 9354

【需求】使用字典樹處理。

public inte***ce trie
【**實現】

/**

* @author yusael

* trie 字典樹

*/public class trie }

public int size()

public boolean isempty()

public void clear()

public v get(string key)

public boolean contains(string key)

public v add(string key, v value)

nodenode = root;

int len = key.length();

for(int i = 0; i < len; i++)

node = childnode;

} if(node.word)

// 新增乙個單詞

node.word = true;

node.value = value;

size++;

return null; }

public v remove(string key)

// 沒有子節點

nodeparent = null;

while((parent = node.parent) != null)

return oldvalue; }

public boolean startswith(string prefix)

/*** 根據傳入字串,找到最後乙個節點

* 例如輸入 dog

* 找到 g

*/private nodenode(string key)

return node; }

private void keycheck(string key) }

}

【測試】

public class main 

}

資料結構 Trie字典樹

簡介 字典樹 又稱單詞查詢樹,trie樹,是一種樹形結構,是一種雜湊樹的變種。優點 利用字串的公共字首來減少查詢時間,最大限度地減少無謂的字串比較,查詢效率比雜湊樹高。性質 1.根節點不包含字元,除根節點外每乙個節點都只包含乙個字元 2.從根節點到某一節點,路徑上經過的字元連線起來,為該節點對應的字...

資料結構 TRIE樹

分類 data structure 2009 04 19 22 31 5425人閱讀收藏 舉報trie樹 trie樹就是字元樹,其核心思想就是空間換時間。舉個簡單的例子。給你100000個長度不超過10的單詞。對於每乙個單詞,我們要判斷他出沒出現過,如果出現了,第一次出現第幾個位置。這題當然可以用h...

資料結構 TRIE樹

trie樹 trie樹就是字元樹,其核心思想就是空間換時間。舉個簡單的例子。給你100000個長度不超過10的單詞。對於每乙個單詞,我們要判斷他出沒出現過,如果出現了,第一次出現第幾個位置。這題當然可以用hash來,但是我要介紹的是trie樹。在某些方面它的用途更大。比如說對於某乙個單詞,我要詢問它...