题目
Given a non-empty binary search tree and a target value, find the value in the BST that is closest to the target.
答案
class Solution {
public int closestValue(TreeNode root, double target) {
TreeNode curr = root;
int ans = root.val;
while(curr != null) {
double diff1 = Math.abs(target - curr.val), diff2 = Math.abs(target - ans);
if(diff1 < diff2) ans = curr.val;
curr = (target < curr.val) ? curr.left : curr.right;
}
return ans;
}
}