如何创建带关键点的树状图

2024-09-28 22:40:12 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的计算机科学入门课上,我们有一个基于树的地图问题。我真的搞不懂如何按照他们要求的方式制作这棵树。在

到目前为止我所拥有的:

class EmptyMap():
    __slots__ = ()

class NonEmptyMap():
    __slots__ = ('left','key','value','right')

def mkEmptyMap():
    m = EmptyMap()
    return m

def mkNonEmptyMap(map1, key, value, map2):
    m = NonEmptyMap()
    m.left = map1
    m.key = key
    m.value = value
    m.right = map2
    return m

def mapInsert(key, value, map1):
   if isinstance(map1, EmptyMap):

   else:

我被mapInsert函数卡住了,它应该是递归的。我们的辅导实验室现在没有任何导师,所以我们非常感谢您的帮助。在

链接到作业文件http://www.cs.rit.edu/~vcss241/Homeworks/08/TreeMap-stu.pdf

谢谢!在


Tags: keyrightreturnvaluedef地图leftclass
1条回答
网友
1楼 · 发布于 2024-09-28 22:40:12

我从未写过或见过Python,但请尝试以下操作:

def mapInsert(key, value, map1):
  if isinstance(map1, EmptyMap):
    return mkNonEmptyMap(mkEmptyMap(), key, value, mkEmptyMap())
  else:
    if map1.key == key:
      map1.value = value;
    else if map1.key > key:
      return map1.left = mapInsert(key, value, map1.left)
    else:
      return map1.right = mapInsert(key, value, map1.right)

相关问题 更多 >