def test_threeelements_notdistinct(self): """Test when there's three elements, but they're not all distinct.""" root = Node(key=42) left = Node(key=19) right = Node(key=42) root.right = right root.left = left self.assertEqual(fltk(root, 42), None) self.assertEqual(fltk(root, 19), root)
def test_threeelements_chain(self): """Tests three-element tree where root has one child.""" root = Node(key=42) left = Node(key=10) right = Node(key=28) root.left = left left.right = right self.assertEqual(Node.getheight(root), 2) self.assertEqual(Node.getheight(left), 1) self.assertEqual(Node.getheight(right), 0)
def test_threeelements_chain(self): """Tests three-element tree where root has one child.""" root = Node(key=42) left = Node(key=50) right = Node(key=100) root.left = left left.right = right self.assertTrue(findk(root, 42)) self.assertTrue(findk(root, 50)) self.assertTrue(findk(root, 100))
def test_threeelements_split(self): """Tests three-element tree where root has two children.""" root = Node(key=42) left = Node(key=50) right = Node(key=100) root.left = left root.right = right self.assertTrue(findk(root, 42)) self.assertTrue(findk(root, 50)) self.assertTrue(findk(root, 100))
def test_threeelements_distinct(self): """Test when there's three distinct elements.""" root = Node(key=42) left = Node(key=19) right = Node(key=52) root.right = right root.left = left self.assertEqual(fltk(root, 42), right) self.assertEqual(fltk(root, 19), root) self.assertEqual(fltk(root, 52), None)
def test_threeelements(self): """Tests when there are three elements.""" root = Node(key=42) left = Node(key=0, parent=root) right = Node(key=50, parent=root) root.left = left root.right = right self.assertEqual(findsuccessor(left), root) self.assertEqual(findsuccessor(root), right) self.assertEqual(findsuccessor(right), None)
def test_threeelements_chain(self): """Tests three-element tree where root has one child.""" root = Node(key=42) left = Node(key=10) right = Node(key=28) root.left = left left.right = right ll = BSTtoLL(root) sort, count = issorted(ll) self.assertTrue(sort) self.assertEqual(count, 3)
def test_textbooktree(self): """Tests the tree provided by the textbook.""" A = Node(key=19) B = Node(key=7, parent=A) I = Node(key=43, parent=A) A.left = B A.right = I C = Node(key=3, parent=B) F = Node(key=11, parent=B) B.left = C B.right = F D = Node(key=2, parent=C) E = Node(key=5, parent=C) C.left = D C.right = E G = Node(key=17, parent=F) F.right = G H = Node(key=13, parent=G) G.left = H J = Node(23, parent=I) O = Node(47, parent=I) I.left = J I.right = O K = Node(key=37, parent=J) J.right = K L = Node(key=29, parent=K) N = Node(key=41, parent=K) K.left = L K.right = N M = Node(key=31, parent=L) L.right = M P = Node(key=53, parent=O) O.right = P self.assertEqual(findsuccessor(P), None) self.assertEqual(findsuccessor(G), A) self.assertEqual(findsuccessor(A), J)