leetcode530】的更多相关文章

Given a binary search tree with non-negative values, find the minimum absolute difference between values of any two nodes. Example: Input: 1 \ 3 / 2 Output: 1 Explanation: The minimum absolute difference is 1, which is the difference between 2 and 1…
/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(int x) { val = x; } * } */ public class Solution { List<int> list = new List<int>(); void p…
题目 又是常见的BST,要利用BST的性质,即中序遍历是有序递增序列. 法一.中序遍历 1 class Solution { 2 public: 3 vector<int>res; 4 void InOrder(TreeNode* p){ 5 if(p!=NULL){ 6 InOrder(p->left); 7 res.push_back(p->val); 8 InOrder(p->right); 9 } 10 } 11 int getMinimumDifference(Tr…
题目 和LeetCode530没什么区别 1 class Solution { 2 public: 3 vector<int>ans; 4 int minDiffInBST(TreeNode* root) { 5 int min = INT_MAX;dfs(root); 6 for(int i = 0;i < ans.size()-1;i++){ 7 if(abs(ans[i] - ans[i+1]) < min) 8 min = abs(ans[i] - ans[i+1]); 9…
主要是深度遍历和层序遍历的递归和迭代写法. 另外注意:因为求深度可以从上到下去查 所以需要前序遍历(中左右),而高度只能从下到上去查,所以只能后序遍历(左右中). 所有题目首先考虑root否是空.有的需要考虑root是否是范围内合理的起点.其他细节:每次需要引用节点值时考虑是否非空. 基本概念: 二叉树节点的深度:从上数第几层:指从根->该节点的最长简单路径边的条数. 二叉树节点的高度:从下数第几层:指从节点->叶子节点的最长简单路径边的条数. leetcode144.二叉树的前序遍历 递归较…
分门别类刷算法,坚持,进步! 刷题路线参考:https://github.com/youngyangyang04/leetcode-master 大家好,我是拿输出博客来督促自己刷题的老三,这一节我们来刷二叉树,二叉树相关题目在面试里非常高频,而且在力扣里数量很多,足足有几百道,不要慌,我们一步步来.我的文章很长,你们 收藏一下. 二叉树基础 二叉树是一种比较常见的数据结构,在开始刷二叉树之前,先简单了解一下一些二叉树的基础知识.更详细的数据结构知识建议学习<数据结构与算法>. 什么是二叉树…