def test_serialize(self):
     c = Codec()
     s = str([1, 2, 4, None, None, 5, None, None, 3, None, 6, None,
              None]).replace("None", "null")
     self.assertEqual(s, c.serialize(test_tree()))
     root = c.deserialize(s)
     root.entire_tree()
 def test_level_order(self):
     s = Solution()
     res = [
         [1],
         [2, 3],
         [4, 5, 6],
     ]
     self.assertEqual(res, s.levelOrder(test_tree()))
Esempio n. 3
0
 def test_postorder_traversal(self):
     s = Solution()
     res = s.postorderTraversal(test_tree())
     self.assertEqual([4, 5, 2, 6, 3, 1], res)
 def test_zigzag_level_order(self):
     s = Solution()
     print(s.zigzagLevelOrder(test_tree()))
 def test_diameter_of_binary_tree(self):
     s = Solution()
     self.assertEqual(5, s.diameterOfBinaryTree(test_tree()))
 def test_max_depth(self):
     s = Solution()
     self.assertEqual(3, s.maxDepth(test_tree()))
Esempio n. 7
0
    def test_is_complete_tree(self):
        s = Solution()
        self.assertEqual(False, s.isCompleteTree(test_tree()))

        node1 = TreeNode(1)
        self.assertEqual(True, s.isCompleteTree(node1))
Esempio n. 8
0
 def test_right_side_view(self):
     s = Solution()
     self.assertEqual([1, 3, 6], s.rightSideView(test_tree()))
Esempio n. 9
0
 def test_inorder_traversal(self):
     s = Solution()
     res = s.inorderTraversal(test_tree())
     self.assertEqual([4, 2, 5, 1, 3, 6], res)
 def test_naive_level_order(self):
     s = Solution()
     res = [1, 2, 3, 4, 5, 6]
     self.assertEqual(res, s.naiveLevelOrder(test_tree()))
Esempio n. 11
0
 def test_morris(self):
     print(morris(test_tree()))
Esempio n. 12
0
 def test_morris_in(self):
     print(morris_in(test_tree()))
Esempio n. 13
0
 def test_morris_pre(self):
     print(morris_pre(test_tree()))
Esempio n. 14
0
 def test_preorder_traversal(self):
     s = Solution()
     res = s.preorderTraversal(test_tree())
     self.assertEqual([1, 2, 4, 5, 3, 6], res)
    def test_flatten(self):
        s = Solution()
        root = test_tree()
        s.flatten(root)

        print(root)