void diff(TreeNode root) {
if(root == null) {
return;
}
if(root.left != null) {
ans = Math.min(ans, Math.abs(root.val-root.left.val));
}
if(root.right != null) {
ans = Math.min(ans, Math.abs(root.val-root.right.val));
}
diff(root.right);
}
注意:ans是一个全局变量。
我能够通过 31/49 个测试用例。我在这方面做错了什么。 我的做法是递归下到树上,计算当前节点和下一个节点ans的差,存入ans变量。