字典樹習題

2021-10-09 19:55:46 字數 1289 閱讀 5685

題意:給定多個字串,有些字串相同,請你統計每種字串的數量佔所有字串數量的百分比,按字典序輸出

思路

#include 

#include

#include

#include

#define ll long

long

using namespace std;

const

int maxn=

1e5+5;

mapint>

mp;intmain()

陣列實現trie

#include 

#include

#include

#include

#define ll long

long

using namespace std;

const

int maxn=

1e6+5;

int n;

string s;

int trie[maxn]

[256

],color[maxn]

,no;

void

insert

(string s)

color[p]++;

}int

search

(string s)

return color[p];}

intmain()

return0;

}

指標實現trie

#include 

#include

#include

#include

#include

#define ll long

long

using namespace std;

const

int maxn=

1e6+5;

int n;

string s;

struct trie

}*root;

void

insert

(string s)

p->cnt++;}

intsearch

(string s)

return p-

>cnt;

}int

main()

return0;

}

字典樹leetcode習題

給出乙個字串陣列words組成的一本英語詞典。從中找出最長的乙個單詞,該單詞是由words詞典中其他單詞逐步新增乙個字母組成。若其中有多個可行的答案,則返回答案中字典序最小的單詞。若無答案,則返回空字串。例項 輸入 words w wo wor worl world 輸出 world 解釋 單詞 w...

Trie樹(字典樹)

trie樹的核心思想是用空間換時間,通過在樹中儲存字串的公共字首,來達到加速檢索的目的。例如,對於一棵儲存由英文本母組成的字串的trie樹,如下圖 trie樹在實現的時候,可以用左兒子右兄弟的表示方法,也可以在每個節點處開設乙個陣列,如上圖的方法。trie樹的主要操作是插入 查詢,也可以進行刪除。插...

字典樹 Trie樹

字典樹 trie樹 顧名思義是一種樹形結構,屬於雜湊樹的一種。應用於統計 排序 查詢單詞 統計單詞出現的頻率等。它的優點是 利用字串的公共字首來節約儲存空間,最大限度地減少無謂的字串比較,查詢效率比雜湊表高。字典樹的結構特點 根節點不代表任何字元。其他節點從當前節點回溯到根節點可以得到它代表的字串。...