本文整理汇总了Python中node.Node.getheight方法的典型用法代码示例。如果您正苦于以下问题:Python Node.getheight方法的具体用法?Python Node.getheight怎么用?Python Node.getheight使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类node.Node
的用法示例。
在下文中一共展示了Node.getheight方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_setting_leaf_nodes
# 需要导入模块: from node import Node [as 别名]
# 或者: from node.Node import getheight [as 别名]
def test_setting_leaf_nodes(self):
parent_data = 10
parent = Node(parent_data)
self.assertEqual(parent.getheight(), 0)
left_child = Node(5)
right_child = Node(20)
parent.setleft(left_child)
self.assertEqual(parent.getheight(), 1)
parent.setright(right_child)
self.assertEqual(parent.getheight(), 1)
parent.setleft(None)
self.assertEqual(parent.getheight(), 1)
parent.setright(None)
self.assertEqual(parent.getheight(), 0)
# Parent no longer has any children nodes
# Left child node gets two children added
left_gchild = Node(4)
right_gchild = Node(6)
left_child.setleft(left_gchild)
left_child.setright(right_gchild)
self.assertEqual(left_child.getheight(), 1)
# Parent gets left_child as its child
parent.setleft(left_child)
self.assertEqual(parent.getheight(), left_child.getheight() + 1)
示例2: test_init
# 需要导入模块: from node import Node [as 别名]
# 或者: from node.Node import getheight [as 别名]
def test_init(self):
startdata = 100
root = Node(startdata)
self.assertEqual(root.getheight(), 0)
self.assertEqual(root.getdata(), startdata)
self.assertIsNone(root.getleft())
self.assertIsNone(root.getright())
示例3: test_determineheight
# 需要导入模块: from node import Node [as 别名]
# 或者: from node.Node import getheight [as 别名]
def test_determineheight(self):
left_child = Node(5)
self.assertEqual(left_child.getheight(), 0)
left_child.height = 4
self.assertEqual(left_child.getheight(), 4)
right_child = Node(20)
self.assertEqual(right_child.getheight(), 0)
parent = Node(10)
parent.setright(right_child)
self.assertEqual(parent.getheight(), 1)
parent.setleft(left_child)
self.assertEqual(parent.getheight(), left_child.getheight() + 1)
left_child = None
parent.setleft(None)
self.assertEqual(parent.getheight(), right_child.getheight() + 1)
left_child = Node(5)
parent.setleft(left_child)
self.assertEqual(parent.getheight(), left_child.getheight() + 1)
self.assertEqual(parent.getheight(), right_child.getheight() + 1)
# These will be the children of left_child
left_gchild = Node(15)
right_gchild = Node(25)
left_child.setleft(left_gchild)
left_child.setleft(right_gchild)
self.assertEqual(left_child.getheight(), left_gchild.getheight() + 1)
# Parent height will be unchanged despite child's height changing
# Until the parent calls determineheight() function
self.assertEqual(parent.getheight(), right_child.getheight() + 1)
self.assertNotEqual(parent.getheight(), left_child.getheight() + 1)
# Now call determineheight() on parent. It will not have the height of
# left_child height plus 1
parent.determineheight()
self.assertEqual(parent.getheight(), left_child.getheight() + 1)
self.assertNotEqual(parent.getheight(), right_child.getheight() + 1)