【leetcode】Two Sum

来源:互联网 发布:凤凰金融 以大数据 编辑:程序博客网 时间:2024/06/06 01:13

Given an array of integers, return indices of the two numbers such that they add up to a specific target.

You may assume that each input would haveexactly one solution.

Example:

Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
Sulution:

对于这个问题,本质上是对数组进行来遍历,通过两层循环找到,数组中的两个元素的和为target,但是要注意的是,如果没有找到两个数的和为target,则需要抛出异常,这样才是一个完整的算法!

public class Solution {    public int[] twoSum(int[] nums, int target) {        int i,j;        int []arr = new int[2];        for(i = 0; i < nums.length-1; ++i){            for(j = i+1; j < nums.length; ++j){               if((nums[i] + nums[j]) == target)               {                 arr[0] = i;                 arr[1] = j;                 return arr;               }            }        }        throw new IllegalArgumentException("No two sum solution");    }


Conclusion:

AC:39ms

1 0
原创粉丝点击