leetcode筆記 Trie相關問題

2021-09-01 09:28:39 字數 2081 閱讀 3407

實現乙個 trie (字首樹),包含insert,search, 和startswith這三個操作。

示例:

trie trie = new trie();
說明:

class trie 

public node()

}private node root;

/** initialize your data structure here. */

public trie()

/** inserts a word into the trie. */

public void insert(string word)

}private node root;

/** initialize your data structure here. */

public worddictionary()

/** adds a word into the data structure. */

public void addword(string word)

return false;

}private boolean search(node node, string word, int index)

char c = word.charat(index);

if(c!='.')

return false;

}else

}return false; }}

}/**

* your worddictionary object will be instantiated and called as such:

* worddictionary obj = new worddictionary();

* obj.addword(word);

* boolean param_2 = obj.search(word);

*/

實現乙個 mapsum 類裡的兩個方法,insertsum

對於方法insert,你將得到一對(字串,整數)的鍵值對。字串表示鍵,整數表示值。如果鍵已經存在,那麼原來的鍵值對將被替代成新的鍵值對。

對於方法sum,你將得到乙個表示字首的字串,你需要返回所有以該字首開頭的鍵的值的總和。

示例 1:

輸入: sum("ap"), 輸出: 3

輸入: sum("ap"), 輸出: 5

class mapsum 

}private node root;

/** initialize your data structure here. */

public mapsum()

public void insert(string key, int val)

cur = cur.next.get(c);

}cur.val = val;

}public int sum(string prefix)

cur = cur.next.get(c);

}return sum(cur);

}private int sum(node node)

int sum = node.val;

for(char key : node.next.keyset())

return sum;

}}/**

* your mapsum object will be instantiated and called as such:

* mapsum obj = new mapsum();

* obj.insert(key,val);

* int param_2 = obj.sum(prefix);

*/

筆記整合 Trie樹

trie樹,也叫 字典樹 顧名思義,它是乙個樹形結構。它是一種專門處理字串匹配的資料結構,用來解決在一組字串集合中快速查詢某個字串的問題。trie樹到底長什麼樣子?比如有6個字串,它們分別是 how,hi,her,hello,so,see。希望在裡面多次查詢某個字串是否存在。如果每次查詢,都是拿要查...

Trie 樹學習筆記

trie 樹是一種能夠高效的儲存和使用字串集合的一種東西。它的作用跟 texttt 十分相似,都是用來儲存字串集合的利器,但是,trie 樹卻比 texttt 的時間複雜度更加優秀。詳情見時空複雜度分析。trie 樹究竟是什麼東西呢?讓我們通過儲存乙個字串集合來直觀的了解它。已知我們要儲存這樣的字串...

LeetCode基礎 字串 Trie

trie 來自單詞 retrieval,發音為 try 避免與tree混淆 也叫做單詞查詢樹,或字典樹。trie 是樹結構,除根結點外,每個結點都只會有乙個父結點。每個結點都有 r 個子結點,r 是字母表的大小,而且可能含有大量的空結點。假設有字串 she sells sea shells by t...