1和一定时找数组中的两个数

Posted 浪川宣哲

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1和一定时找数组中的两个数相关的知识,希望对你有一定的参考价值。

题目要求:

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。

你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。

思路:

求和一定时,求两个数,就需要两个指针,两个指针一个大一个小不想等,首先让小的的指针不动,让大的指针向后移动,知道出现大于或者等于需要的和。等于时输出结果,小的指针向后移动一位;大于时小的指针向后移动出现大于等于需要的和。以此类推,得出结果。相当于一个逆向的“中值定理”。

代码:

public class one 
{
    
    public static void main(String[] args) 
{
    
    int[] nums = {1,2,3,4,5,6,7,8,9};
    int target = 10;
    for (int a=0;a<nums.length;a++)
    {
        for(int b=a+1;b<nums.length;b++)
      
       if (nums[a]+nums[b] == target)
          System.out.println("There have"+nums[a]+"and"+nums[b]+"="+target);
    
    }
}

}

 

以上是关于1和一定时找数组中的两个数的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript笔试题(js高级代码片段)

c语言二维数组中的查找,杨氏矩阵在一个二维数组中,每行都依照从左到右的递增的顺序排序,输入这种一个数组和一个数,推断数组中是否包括这个数

如何将片段中的 ListView 对象的数据传递给 Activity?

CPNtools协议建模安全分析---实例变迁标记

数组冒泡排序

和为定值的两个数