hiho一下第二週:題目1 : trie樹
題目要求先建立字典樹,然後實現查詢擁有指定字串字首的所有單詞的數量。
建立了一顆26叉樹,每個子節點代表乙個字母,在樹的生成過程同時進行統計,加快查詢速度。
1.樹節點類:
class
trienode
}};
2.樹類
class trie
void insert(string a)
else}}
int search(string a) //該節點不存在子節點,所以查詢結果為0;
if (i == len - 1) //查詢結束,返回結果
else}}
};
#include
#include
using
namespace
std;
class trienode
}};class trie
void insert(string a)
else}}
int search(string a)
if (i == len - 1)
else}}
};int main()
int searchnum;
cin >> searchnum;
cin.get();
string a;
for (int i = 0; i < searchnum; i++)
hiho一下第143周
題目1 hiho密碼 時間限制 10000ms 單點時限 1000ms 記憶體限制 256mb 描述 小ho根據最近在密碼學課上學習到的知識,開發出了一款hiho密碼,這款密碼的秘鑰是這樣生成的 對於一種有n個字母的語言,選擇乙個長度為m的單詞 將組成這個單詞的所有字母按照順序不重複的寫出 即遇到相...
hiho一下 第197周 逆序單詞
時間限制 10000ms 單點時限 1000ms 記憶體限制 256mb 在英文中有很多逆序的單詞,比如dog和god,evil和live等等。現在給出乙份包含n個單詞的單詞表,其中每個單詞只出現一次,請你找出其中有多少對逆序單詞。第1行 1個整數,n,表示單詞數量。2 n 50,000。第2.n ...
hiho一下第二週 Trie樹
小hi和小ho是一對好朋友,出生在資訊化社會的他們對程式設計產生了莫大的興趣,他們約定好互相幫助,在程式設計的學習道路上一同前進。這一天,他們遇到了一本詞典,於是小hi就向小ho提出了那個經典的問題 小ho,你能不能對於每乙個我給出的字串,都在這個詞典裡面找到以這個字串開頭的所有單詞呢?身經百戰的小...