python的字典樹

2021-08-08 20:27:23 字數 1993 閱讀 3861

#-*-coding:utf-8-*-

'''字典樹測試:

python沒有指標,但是可以用巢狀字典來實現樹結構.對於非ascii的單詞,統一用unicode編碼來插入與搜尋.

classtrienode: #這是節點

def__init__(self):

'''定義節點的資料結構,並初始化,設定標誌位判斷是否單詞是否是完整的存在於字典樹中

'''self.data={}

self.flag=false

classtrietree(object):

def__init__(self):

'''定義字典樹的資料結構並初始化根節點

'''self.root=trienode()

definsert_func(self, data):

'''字典樹的插入函式,data為待插入的資料,型別為字串

'''top_node=self.root

foriinrange(len(data)):

one_char=data[i]

child_node=top_node.data.get(one_char)

if notchild_node:

top_node.data[one_char]=trienode()#設定下乙個節點

top_node=top_node.data[one_char]

top_node.flag=true

defsearch_func(self, data):

'''字典樹的查詢函式,data型別為字串

'''top_node=self.root

foriinrange(len(data)):

one_char=data[i]

top_node=top_node.data.get(one_char)

if nottop_node:

returnfalse

returntop_node.flag

if__name__ =='__main__':

testtrietree=trietree()

t3 = time.time()

foriinrange(0,1000):

temp = str(i)

testtrietree.insert_func(temp)

t1 = time.time()

#print testtrietree

print'insert消耗時間是:'+str(t1-t3)

printtesttrietree.search_func('1')

t2 = time.time()

print'search消耗時間是:'+str(t2-t1)

print'-------------------search over----------------------------'

python字典的作用 python字典詳解

字典的用途 字典是python提供的一種常用的資料結構,它用於存放具有對映關係的資料。字典相當於儲存了兩組資料,其中一組資料是關鍵資料,被稱為 key 另一組資料可通過 key 來訪問,被稱為 value。形象地看,字典中 key 和 value 的關聯關係如下圖所示 注意 key是十分關鍵的資料,...

python內建字典 python中字典的內建方法

python字典包含了以下內建方法 功能 字典 clear 函式用於刪除字典內所有元素。語法 dict.clear 引數 無 返回值 沒有任何返回值。dict print 字典長度 d len dict 字典長度 2 dict.clear print 字典刪除後長度 d len dict 字典刪除後...

python字典的方法 Python 字典常用方法

ab d d.clear d 有人可能會問為什麼不直接d 看下面的例子 d x d d x 再看下面 d x d d.clear x 所以如果要真正清除乙個字典要用clear 複製 d y d.copy y age 32 d y 複製後 y 的修改與 d 無關 但如果乙個字典中有引用型別,如list...