problemscpp
A collection of my answers to algorithm problems in c++.
载入中...
搜索中...
未找到
leetcode::delete_node_in_a_bst 命名空间参考

  1. Delete Node in a BST
更多...

class  Solution
 

函数

bool equal (TreeNode *tn1, TreeNode *tn2)
 
 TEST (delete_node_in_a_bst, case1)
 
 TEST (delete_node_in_a_bst, case2)
 
 TEST (delete_node_in_a_bst, case3)
 
 TEST (delete_node_in_a_bst, case4)
 

详细描述

  1. Delete Node in a BST

函数说明

◆ equal()

bool leetcode::delete_node_in_a_bst::equal ( TreeNode * tn1,
TreeNode * tn2 )

在文件 leetcode_test.cpp3452 行定义.

3452 {
3453 if(tn1 == nullptr != (tn2 == nullptr)) {
3454 return false;
3455 }
3456 if(tn1 != nullptr && tn2 != nullptr) {
3457 if(tn1->val != tn2->val) {
3458 return false;
3459 }
3460 if(!equal(tn1->left, tn2->left)) {
3461 return false;
3462 }
3463 if(!equal(tn1->right, tn2->right)) {
3464 return false;
3465 }
3466 }
3467 return true;
3468 }
bool equal(TreeNode *tn1, TreeNode *tn2)

引用了 equal(), leetcode::TreeNode::left, leetcode::TreeNode::right , 以及 leetcode::TreeNode::val.

被这些函数引用 equal(), TEST(), TEST(), TEST() , 以及 TEST().

◆ TEST() [1/4]

leetcode::delete_node_in_a_bst::TEST ( delete_node_in_a_bst ,
case1  )

在文件 leetcode_test.cpp3470 行定义.

3470 {
3474 auto sol = Solution();
3475 ASSERT_TRUE(equal(output, sol.deleteNode(root, 3)));
3476 }
static TreeNode * deserialize(string data)
Decodes your encoded data to tree.

引用了 leetcode::serialize_and_deserialize_binary_tree::Codec::deserialize() , 以及 equal().

◆ TEST() [2/4]

leetcode::delete_node_in_a_bst::TEST ( delete_node_in_a_bst ,
case2  )

在文件 leetcode_test.cpp3478 行定义.

3478 {
3482 auto sol = Solution();
3483 ASSERT_TRUE(equal(output, sol.deleteNode(root, 0)));
3484 }

引用了 leetcode::serialize_and_deserialize_binary_tree::Codec::deserialize() , 以及 equal().

◆ TEST() [3/4]

leetcode::delete_node_in_a_bst::TEST ( delete_node_in_a_bst ,
case3  )

在文件 leetcode_test.cpp3486 行定义.

3486 {
3490 auto sol = Solution();
3491 ASSERT_TRUE(equal(output, sol.deleteNode(root, 0)));
3492 }

引用了 leetcode::serialize_and_deserialize_binary_tree::Codec::deserialize() , 以及 equal().

◆ TEST() [4/4]

leetcode::delete_node_in_a_bst::TEST ( delete_node_in_a_bst ,
case4  )

在文件 leetcode_test.cpp3494 行定义.

3494 {
3496 TreeNode *root = serialize_and_deserialize_binary_tree::Codec::deserialize("[3,2,5,null,null,4,10,null,null,8,15,7]");
3497 TreeNode *output = serialize_and_deserialize_binary_tree::Codec::deserialize("[3,2,7,null,null,4,10,null,null,8,15]");
3498 auto sol = Solution();
3499 ASSERT_TRUE(equal(output, sol.deleteNode(root, 5)));
3500 }

引用了 leetcode::serialize_and_deserialize_binary_tree::Codec::deserialize() , 以及 equal().