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和一定时找数组中的两个数的主要内容,如果未能解决你的问题,请参考以下文章
c语言二维数组中的查找,杨氏矩阵在一个二维数组中,每行都依照从左到右的递增的顺序排序,输入这种一个数组和一个数,推断数组中是否包括这个数