小编Zhe*_*Pei的帖子

如果两个Tree具有相同的值节点,则使用set来计数

在"def same_child_values"中.我试图比较两个树,看看另一棵树是否具有与主tree.children相同的值节点.在这种情况下,我使用一组来比较它们.但是在我的代码中,当树深度大于1时,我的代码无法正确地将节点添加到集合中.谁能帮我?

class Tree:
      '''Tree ADT; nodes may have any number of children'''

  def __init__(self: 'Tree',
               item: object =None, children: list =None):
    '''Create a node with item and any number of children'''

    self.item = item
    if not children:
      self.children = []
    else:
      self.children = children[:]

  def __repr__(self: 'Tree') -> str:
    '''Return representation of Tree as a string'''

    if self.children:
      return 'Tree({0}, {1})'.format(repr(self.item), repr(self.children))
    else:
      return 'Tree({})'.format(repr(self.item))

  def is_leaf(self: 'Tree') -> bool:
    '''Return True iff this Tree node is a leaf …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

5
推荐指数
1
解决办法
140
查看次数

标签 统计

python ×1

python-3.x ×1