力扣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);

}

}

相关推荐
pcm1235671 分钟前
设计C/S架构的IM通信软件(4)
java·c语言·架构
徐小夕@趣谈前端5 分钟前
Web文档的“Office时刻“:jitword共建版2.0发布!让浏览器变成本地生产力
前端·数据结构·vue.js·算法·开源·编辑器·es6
问好眼9 分钟前
【信息学奥赛一本通】1275:【例9.19】乘积最大
c++·算法·动态规划·信息学奥赛
Daydream.V27 分钟前
逻辑回归实例问题解决(LogisticRegression)
算法·机器学习·逻辑回归
代码无bug抓狂人27 分钟前
C语言之表达式括号匹配
c语言·开发语言·算法
不穿格子的程序员35 分钟前
从零开始写算法——普通数组篇:缺失的第一个正数
算法·leetcode·哈希算法
带刺的坐椅39 分钟前
用 10 行 Java8 代码,开发一个自己的 ClaudeCodeCLI?你信吗?
java·ai·llm·agent·solon·mcp·claudecode·skills
学历真的很重要41 分钟前
【系统架构师】第二章 操作系统知识 - 第二部分:进程管理(详解版)
学习·职场和发展·系统架构·系统架构师
Nebula_g42 分钟前
线程进阶: 无人机自动防空平台开发教程(更新)
java·开发语言·数据结构·学习·算法·无人机
HAPPY酷1 小时前
构造与析构:C++ 中对象的温柔生灭
java·jvm·c++