zoukankan      html  css  js  c++  java
  • 167 -两个Sum II

    给定已按升序排序的整数数组,找到两个数字,使它们相加到特定的目标数。

    函数twoSum应返回两个数字的索引,以便它们加起来到目标,其中index1必须小于index2。

    注意:

    • 您返回的答案(index1和index2)不是从零开始的。
    • 您可以假设每个输入只有一个解决方案,并且您可能不会两次使用相同的元素。

    例:

    输入:数字= [2,7,11,15],目标= 9
    输出: [1,2]
    说明: 2和7之和为9.因此
    i
    ndex1 = 1,index2 = 2。
    初始化i和j分别为首位索引和末尾索引。开始循环将数组下标i跟j的值相加比较是否为目标值作为循环条件。如果相加大于目标值,j--;如果相加小于目标值,i++;
     public static int [] twoSum(int [] numbers,int target)
        {
            int i=0,j=numbers.length-1;
            while(numbers[i]+numbers[j]!=target)
            {
                if (numbers[i]+numbers[j]>target)
                    j--;
                else if (numbers[i]+numbers[j]<target)
                    i++;
            }
            return new int[]{i+1,j+1};
        }
    
    
  • 相关阅读:
    [ZJOI2014]力
    [八省联考2018]劈配
    [APIO2007]动物园
    [九省联考2018]IIIDX
    [HAOI2015]树上染色
    [SHOI2008]堵塞的交通
    暑假第五周
    暑假第四周
    暑假第三周
    暑假第二周
  • 原文地址:https://www.cnblogs.com/dloading/p/10701767.html
Copyright © 2011-2022 走看看