力扣530 补9.12

530.二叉搜索树的最小绝对差

可以做,就是中序遍历,把数从小到大排序,再循环找最小值。

再或者一个个遍历每个结点,把他跟父结点和爷结点比大小,更新最小值,因为要么左边要么右边跟中间节点比大小,不会让左边跟右边比大小。

class Solution {

int num=0;

int[] a=new int[10000];

int ans=100000;

public int getMinimumDifference(TreeNode root) {

if(root==null){

return 0;

}

dfs(root);

// for(int i=0;i<num;i++){

// System.out.println(a[i]);

// }

// System.out.println(num);

for(int i=0;i<num-1;i++){

ans=Math.min(a[i+1]-a[i],ans);

}

return ans;

}

void dfs(TreeNode root){

if(root==null) return;

dfs(root.left);

a[num++]=root.val;

// System.out.println(num);

dfs(root.right);

}

}

相关推荐
TheITSea几秒前
Java中的Optional:从入门到精通
java·开发语言
程序员侠客行6 分钟前
Mybatis入门到精通 一
java·架构·mybatis
糕......6 分钟前
Java异常处理完全指南:从概念到自定义异常
java·开发语言·网络·学习
小徐Chao努力7 分钟前
【Langchain4j-Java AI开发】04-AI 服务核心模式
java·人工智能·python
我找到地球的支点啦10 分钟前
Matlab系列(006) 一利用matlab保存txt文件和读取txt文件
开发语言·算法·matlab
刘宇涵4918 分钟前
Javalength
java
历程里程碑19 分钟前
双指针巧解LeetCode接雨水难题
java·开发语言·数据结构·c++·python·flask·排序算法
Dev7z23 分钟前
基于Matlab实现GRACE卫星重力数据的全球水储量变化估算与分析
人工智能·算法·matlab
qualifying27 分钟前
JAVAEE——多线程(2)
java·开发语言
ALex_zry32 分钟前
C++ 中多继承与虚函数表的内存布局解析
java·开发语言·c++