import java.util.*; public class Solution { /** * * @param numbers int整型一维数组 * @param target int整型 * @return int整型一维数组 */ public int[] twoSum (int[] numbers, int target) { // write code here int[] a = Arrays.copyOf(numbers,numbers.length); Arrays.sort(numbers); int min = 0,max = numbers.length - 1; //排序找出两个值 while(max > min){ if(numbers[max] + numbers[min] > target){ max--; min = 0; continue; } if(numbers[max] + numbers[min] == target){ break; } min++; } int[] rin = new int[2]; int j = 0; //然后再找出下标 for(int i = 0; i < a.length; i++){ if(a[i] == numbers[min] || a[i] == numbers[max]){ rin[j] = i + 1; j++; } } return rin; } }