二叉树结点,排序
1.二叉搜索树结点最小距离
给定一个二叉搜索树的根结点 root, 返回树中任意两节点的差的最小值
对这个序列相邻相减,取最小值即可。 实现时,可以优化掉这个序列。
在遍历时记录上一个访问的节点值,和当前节点相减,记录下最小值即可
//定义树节点
public class TreeNode {
public int val;
public TreeNode left, right;
public TreeNode(int val) {
this.val = val;
this.left = this.right = null;
}
}
public class a1{
Integer res = Integer.MAX_VALUE, pre = null;
public int minDiffInBST(TreeNode root) {
if (root.left != null) {
minDiffInBST(root.left);
}
if (pre != null) {
res = Math.min(res, root.val - pre);
}
pre = root.val;
if (root.right != null) {
minDiffInBST(root.right);
}
return res;
}
}
- 两个排序链表合并
将两个排序链表合并为一个新的排序链表,与合并数组一个方法,两个指针往后走
public class num4{