Reiks的技術(shù)博客
C/C++/STL/Algorithm/D3D
posts - 17, comments - 2, trackbacks - 0, articles - 0
C++博客
::
首頁(yè)
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
Trie樹(shù)
Posted on 2009-08-28 10:32
reiks
閱讀(1040)
評(píng)論(0)
編輯
收藏
引用
所屬分類(lèi):
算法與數(shù)據(jù)結(jié)構(gòu)
/**/
/*
Name: Trie樹(shù)的基本實(shí)現(xiàn)
Author: MaiK
Description: Trie樹(shù)的基本實(shí)現(xiàn) ,包括查找 插入和刪除操作(衛(wèi)星數(shù)據(jù)可以因情況而異)
*/
#include
<
algorithm
>
#include
<
iostream
>
using
namespace
std;
const
int
sonnum
=
26
,
base
=
'
a
'
;
struct
Trie
{
int
num;
//
to remember how many word can reach here,that is to say,prefix
bool
terminal;
//
If terminal==true ,the current point has no following point
struct
Trie
*
son[sonnum];
//
the following point
}
;
Trie
*
NewTrie()
//
create a new node
{
Trie
*
temp
=
new
Trie;
temp
->
num
=
1
;
temp
->
terminal
=
false
;
for
(
int
i
=
0
; i
<
sonnum;
++
i)
temp
->
son[i]
=
NULL;
return
temp;
}
void
Insert(Trie
*
pnt,
char
*
s,
int
len)
//
insert a new word to Trie tree
{
Trie
*
temp
=
pnt;
for
(
int
i
=
0
;i
<
len;
++
i)
{
if
(temp
->
son[s[i]
-
base
]
==
NULL)
temp
->
son[s[i]
-
base
]
=
NewTrie();
else
temp
->
son[s[i]
-
base
]
->
num
++
;
temp
=
temp
->
son[s[i]
-
base
];
}
temp
->
terminal
=
true
;
}
void
Delete(Trie
*
pnt)
//
delete the whole tree
{
if
(pnt
!=
NULL)
{
for
(
int
i
=
0
;i
<
sonnum;
++
i)
if
(pnt
->
son[i]
!=
NULL)
Delete(pnt
->
son[i]);
delete pnt;
pnt
=
NULL;
}
}
Trie
*
Find(Trie
*
pnt,
char
*
s,
int
len)
//
trie to find the current word
{
Trie
*
temp
=
pnt;
for
(
int
i
=
0
;i
<
len;
++
i)
if
(temp
->
son[s[i]
-
base
]
!=
NULL)
temp
=
temp
->
son[s[i]
-
base
];
else
return
NULL;
return
temp;
}
只有注冊(cè)用戶(hù)
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開(kāi)源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
最大流 Edmonds-Karp
樹(shù)狀數(shù)組
匈牙利算法
并查集
Topsort
Trie樹(shù)
大整數(shù)乘除小整數(shù)
RMQ問(wèn)題ST算法
MST-Kruskal
組合數(shù)
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問(wèn)
Chat2DB
管理
Powered by:
C++博客
Copyright © reiks
日歷
<
2025年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
給我留言
查看公開(kāi)留言
查看私人留言
隨筆分類(lèi)
Direct3D(1)
算法與數(shù)據(jù)結(jié)構(gòu)(15)
心情隨筆(1)
隨筆檔案
2011年5月 (2)
2009年8月 (15)
搜索
最新評(píng)論
1.?re: 如何在Direct3D里面使用GDI
為什么我用IDirect3DSurface9的GetDC接口得到dc,然后畫(huà)矩形框顯示不出來(lái)?
獲取dc是成功的
--herman
2.?re: 如何在Direct3D里面使用GDI
很想知道,為什么要在D3D里使用GDI?
--K.V
閱讀排行榜
1.?RMQ問(wèn)題ST算法(3574)
2.?如何在Direct3D里面使用GDI(1641)
3.?Trie樹(shù)(1040)
4.?最大流 Edmonds-Karp(764)
5.?匈牙利算法(640)
6.?Topsort(560)
7.?MST-PRIM(545)
8.?并查集(479)
9.?大整數(shù)乘除小整數(shù)(447)
10.?樹(shù)狀數(shù)組(392)
評(píng)論排行榜
1.?如何在Direct3D里面使用GDI(2)
2.?線段樹(shù)(0)
3.?MST-PRIM(0)
4.?Floyd(0)
5.?Dijkstra(0)
6.?全排列(0)
7.?組合數(shù)(0)
8.?MST-Kruskal(0)
9.?RMQ問(wèn)題ST算法(0)
10.?大整數(shù)乘除小整數(shù)(0)
国产三级久久久精品麻豆三级
|
国产精品久久久久天天影视
|
中文字幕亚洲综合久久菠萝蜜
|
亚洲香蕉网久久综合影视
|
久久99国产综合精品
|
久久精品夜色噜噜亚洲A∨
|
久久综合九色综合网站
|
亚洲国产成人久久综合碰碰动漫3d
|
久久婷婷五月综合97色一本一本
|
99久久国产精品免费一区二区
|
av午夜福利一片免费看久久
|
理论片午午伦夜理片久久
|
97久久精品人妻人人搡人人玩
|
久久乐国产精品亚洲综合
|
69国产成人综合久久精品
|
精品国产99久久久久久麻豆
|
久久久久噜噜噜亚洲熟女综合
|
国产美女久久久
|
久久综合亚洲欧美成人
|
三级三级久久三级久久
|
久久久久亚洲精品天堂久久久久久
|
…久久精品99久久香蕉国产
|
久久久久久国产a免费观看黄色大片
|
99久久国产综合精品女同图片
|
亚洲国产成人久久综合区
|
久久精品国产99久久香蕉
|
亚洲一区中文字幕久久
|
色综合久久精品中文字幕首页
|
狠狠88综合久久久久综合网
|
久久久亚洲欧洲日产国码aⅴ
|
亚洲成色www久久网站夜月
|
狠狠色婷婷久久一区二区
|
国产精品久久久久免费a∨
|
思思久久99热只有频精品66
|
青春久久
|
亚洲国产精品无码久久久不卡
|
久久久久久久久波多野高潮
|
久久精品国产亚洲精品2020
|
久久国产高潮流白浆免费观看
|
久久中文字幕一区二区
|
久久精品国产福利国产琪琪
|