NOI2000 單詞查詢樹

2022-02-15 16:11:56 字數 967 閱讀 2730

在進行文法分析的時候,通常需要檢測乙個單詞是否在我們的單詞列表裡。為了提高查詢和定位的速度,通常都要畫出與單詞列表所對應的單詞查詢樹,其特點如下:

單詞列表對應的單詞查詢樹

a

anasp

asasc

ascii

basbasic

對乙個確定的單詞列表,請統計對應的單詞查詢樹的節點數(包括根節點)

[輸入檔案]

該檔案為乙個單詞列表,每一行僅包含乙個單詞和乙個換行/回車符。每個單詞僅由大寫的英文本元組成,長度不超過63個字元。檔案總長度不超過32k,至少有一行資料。

[輸出檔案]

該檔案中僅包含乙個整數和乙個換行/回車符。該整數為單詞列表對應的單詞查詢樹的節點數。

[輸入輸出檔案樣例]

input

a

anasp

asasc

ascii

basbasic

output

13

1/*2

查詢trie樹有多少節點

3一定要加上根節點 4*/

5 #include 6 #include 7 #include 8

9const

int maxn=100010;10

11int

n,tot;

1213

struct

node ;

16node t[maxn];

1718

char s[maxn][65

];19

20 inline void build(int

p) 28

return;29

}3031int

hh()

4041

int sb=hh();

42int main()

**

NOI2000 單詞查詢樹

輸入檔案 trie.in輸出檔案 trie.out簡單對比 時間限制 1 s 記憶體限制 128 mb 在進行文法分析的時候,通常需要檢測乙個單詞是否在我們的單詞列表裡。為了提高查詢和定位的速度,通常都要畫出與單詞列表所對應的單詞查詢樹,其特點如下 單詞列表對應的單詞查詢樹 a anasp asas...

單詞查詢樹

兩種方法 給出一些列號碼,若果任乙個號碼不在另乙個中充當字首,那麼這系列號碼是合理的輸出yes,否則輸出no 思路 標頭檔案中find函式的使用,按長度從小到大排列,那麼能當另乙個號碼字首的只能是前乙個當後乙個的字首,所以乙個乙個找 時間複雜度 o n include include include...

單詞查詢樹

一 概念 從上面的圖中,我們或多或少的可以發現一些好玩的特性。第一 根節點不包含字元,除根節點外的每乙個子節點都包含乙個字元。第二 從根節點到某一節點,路徑上經過的字元連線起來,就是該節點對應的字串。第三 每個單詞的公共字首作為乙個字元節點儲存。二 使用範圍 既然學trie樹,我們肯定要知道這玩意是...