找出数组中相加等于某数的两个数

	public static void main(String[] args) throws IOException {
	    int[] a={4,5,3,2,7,9,1};
	    findSumNum(a,10);
	    //1,9
	    //3,7
	    //5,5
}
	//给定一个数字,一个数组,找出数组中相加等于这两个数的和,不能用数据结构 
	public static void findSumNum(int[] a,int sum){
		Arrays.sort(a);
		int i=0,j=a.length-1;

		while(i<=j){
			if(a[i]+a[j]<sum) i++;
			else if(a[i]+a[j]>sum) j--;
			else {
				System.out.println(a[i]+","+a[j]);
				i++;
			}
		}		
	}

你可能感兴趣的:(每日一练)