您的位置:首页 > 其它

leetcode Two Sum

2016-03-07 12:59 399 查看
题目链接

import java.lang.reflect.Array;
import java.util.Arrays;

public class Solution {
public static void main(String args[])
{
int result[]=twoSum(new int[]{2,1,9,4,4,56,90,3},8);
for(int i=0;i<result.length;i++)
{
System.out.println(result[i]);
}
}

static public int[] twoSum(int[] nums, int target) {
int result[]=new int[]{-1,-1};

int origin[]=new int[nums.length];
for(int i=0;i<nums.length;i++)
{
origin[i]=nums[i];
}
Arrays.sort(origin);
int i=0,j=origin.length-1;

while(i<j)
{
if(origin[i]+origin[j]==target)
{
for(int k=0;k<nums.length;k++)
{
if(origin[i]==nums[k]&&result[0]==-1)
{
result[0]=k;
}
else
if(origin[j]==nums[k]&&result[1]==-1)
{
result[1]=k;
}

}
break;
}
else if(origin[i]+origin[j]<target)
{
i++;
}
else
{
j--;
}
}

return result;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: