ノードとアークのデータを使用してツリーを構築しようとしています。これまでに行ったことは、次のようにクラスTree、Arc、Nodeをビルドすることです。
class Tree():
def __init__(self):
self.root = None
self.nodes = {}
self.end_arcs = {}
class Arc():
def __init__(self,start,end,data={}):
self.start = start
self.end = end
self.data = data
class Node():
def __init__(self,token,data={}):
self.token = str(token)
self.state = self.OPEN
self.data = data
ノードにはますます番号が付けられ、エンドノードには-1のラベルが付けられます。ただし、ツリーを逆にしてノードの番号を付け直したい場合は、多くのことを変更する必要があります。ノードのキー、すべてのノードのラベル、そしておそらく(または、ノードのノードを指すことができますか? )また、私のアークのノードが口述します。ですから、この共通の構造を実装する私の方法は良いものではないと思います。この問題を解決する標準的な方法はありますか?または、このようなツリー構造をどのように構築しますか?
前もって感謝します、
ジョリス