Self Dividing Numbers
来源:互联网 发布:浪漫主义文学 知乎 编辑:程序博客网 时间:2024/06/14 07:18
Given a binary search tree and the lowest and highest boundaries as L
and R
, trim the tree so that all its elements lies in [L, R]
(R >= L). You might need to change the root of the tree, so the result should return the new root of the trimmed binary search tree.
Example 1:
Input: 1 / \ 0 2 L = 1 R = 2Output: 1 \ 2
Example 2:
Input: 3 / \ 0 4 \ 2 / 1 L = 1 R = 3Output: 3 / 2 / 1
修剪一个二叉树:给定一个二叉树的最大和最小边界L和R,使树中的元素位于L和R之间。
1. 当root位于L和R之间时,递归的修剪其左右子树,并返回root。
2. 当root的值小于L,其左子树都小于L,故舍弃其左子树,递归的修剪其右子树,并返回修剪过的右子树。
3. 当root的值大于R,其右子树都大于R,故舍弃其右子树,递归的修剪其左子树,并返回修剪过的左子树。
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: TreeNode* trimBST(TreeNode* root, int L, int R) { if (root == nullptr) return 0; if (root->val < L) return trimBST(root->right, L, R); else if (root->val > R) return trimBST(root->left, L, R); else { root->left = trimBST(root->left, L, R); root->right = trimBST(root->right, L, R); return root; } }};// 16ms
阅读全文
0 0
- 728. Self Dividing Numbers
- 728. Self Dividing Numbers
- Self Dividing Numbers(leetcode)
- Self Dividing Numbers
- 728. Self Dividing Numbers
- 728. Self Dividing Numbers
- 728. Self Dividing Numbers
- LeetCode Self Dividing Numbers
- 728. Self Dividing Numbers
- 728. Self Dividing Numbers
- Self Dividing Numbers
- 【LeetCode】728. Self Dividing Numbers
- 【LeetCode】728. Self Dividing Numbers
- leetcode-728. Self Dividing Numbers
- LeetCode.728 Self Dividing Numbers
- leetcode 728. Self Dividing Numbers
- Leetcode:728. Self Dividing Numbers
- LeetCode 728. Self Dividing Numbers
- struts2-13访问或添加几个属性(request/session/application属性)
- mysql查询Lost connection to MySQL server during query
- ActiveMQ安装启动
- Zxing实现二维码生成和解析,可带logo
- Java内部类
- Self Dividing Numbers
- 关于Android源码中|= (m & STATIC_VALUE) !=0 的理解
- windows nginx 静态文件缓存配置
- 53. Maximum Subarray
- 如果有人问你爬虫抓取技术的门道,请叫他来看这篇文章
- Gradle初次使用
- jvm内存分配技术
- C语言经典项目之二——扫雷
- 1自己常用Linux常用命令