题解 | #牛群的数量匹配#
牛群的数量匹配
https://www.nowcoder.com/practice/cab27b84774d40a5aaea2ee69e2d0b77
import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * public TreeNode(int val) { * this.val = val; * } * } */ public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param root TreeNode类 * @param k int整型 * @return bool布尔型 */ public boolean findTarget (TreeNode root, int k) { // write code here List<Integer> nums=new ArrayList<>(); inorder(root,nums); int i=0,j=nums.size()-1; while(i<j){ int sum=nums.get(i)+nums.get(j); if(sum==k) return true; if(sum<k) i++; else j--; } return false; } //中序遍历获得有序数组 private void inorder(TreeNode root,List<Integer> nums){ if(root==null) return; if(root.left!=null) inorder(root.left,nums); nums.add(root.val); if(root.right!=null) inorder(root.right,nums); } }