亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從嵌套字典中檢索分支

從嵌套字典中檢索分支

瀟瀟雨雨 2021-03-30 17:35:01
我有一個python嵌套字典(基本上是trie結構),其中的句子作為分支-每個節點都是一個單詞。像這樣的東西: 從根到技巧(句子)檢索所有分支的最有效方法是什么?也就是說,我想擁有所有可能的句子(我有一只狗,我有a彈槍,我不喜歡貓王)。分支(句子)長度不是固定值。
查看完整描述

3 回答

?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

做到這一點的最佳方法可能是使用記憶來優化已解析分支的深度優先搜索。


為此,最簡單的方法是在每個節點中存儲所有已格式化的父節點。例如,該節點a將具有I have,該節點dog將具有I have a等等。


這樣,您將能夠提取O(n)復雜的所有分支,其中n是節點數。但是,這需要對結構進行一些修改。


例如


class Node(dict):


    def __init__(self,parent,value,parent_str):

        self.parent      = parent

        self.value       = value

        self.children    = {}

        parent.children[value] = self

        self.parent_str  = parent_str+' '+value


    def __repr__(self):

        return self.parent_str+' '+value


    def addChild(self,value):

        Node(self,value,self.parent_str)


查看完整回答
反對 回復 2021-04-01
  • 3 回答
  • 0 關注
  • 203 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號