Python字典二进制搜索树

时间:2010-02-05 09:15:20

标签: python dictionary binary-tree

我正在努力了解如何使用Python中的字典和有序遍历二进制搜索树来编写基本实现的代码。该课必须使用以下结构。

如果有人能填写每个函数中的空白(通过)以便让我开始,我会很高兴。

class Dictionary:

    def __init__ (self):

        pass

    def insert (self, key, value):

        pass

    def delete (self, key):

        pass

    def find (self, key):

        pass

    def traverse (self, f):

        pass

    def __str__ (self):

        return str(self)

3 个答案:

答案 0 :(得分:0)

  

二叉树

您可能想要使用the array representation of a binary tree。 Python有一个强大的list data type,这将使大部分工作变得微不足道。 :)

class BinaryTree():
  def __init__(self):
     self.nodes = []

在这里,这是你可以开始的基础。

答案 1 :(得分:0)

如果您仍在寻找答案,请查看此食谱:http://code.activestate.com/recipes/577197-sortedcollection/。我认为它为您提供了足够的基础,可以根据您的需要进行调整。

答案 2 :(得分:-2)

class Dictionary:
    def __init__ (self):
        self.data = {}
    def insert (self, key, value):
        self.data[key] = value
    def delete (self, key):
        if key in self.data:
            del self.data[key]
    def find (self, key):
        if key in self.data:
            return self.data[key]
        return None
    def traverse (self, f):
        for key,value in self.data:
            f(key,value)
    def __str__ (self):
        return str(self)