二叉树-左右子树的条件判断

2024-09-08  本文已影响0人  _结弦

前言

这是基于力扣二叉搜索树中的搜索

代码

TreeNode* loop(TreeNode* root,int target){
  if(root==nullptr) return nullptr;
  if(root->val == target) return root;
  else if(root->left->val > target){
     return loop(root->left);
  }
  else{
     return loop(root->right);
  }
}

个人理解

这里的左右子树判断并不是单纯的符合条件判断了, 而是一种剪枝或者更像是符合条件的递归 而不是盲目的递归, 之前我对递归的理解或许还可以再加一层看看能否直接不用递归从而获取预期的值在递归里做剪枝并不是特别正确, 这个也没有说可以提前得到预期的结果, 而是根据条件来判断究竟是否进入其中的某一个递归(当然, 就算进入也不会影响预期的结果)

上一篇 下一篇

猜你喜欢

热点阅读