【题目】输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,

 package com.exe9.offer;

 /**
* 【题目】输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,
* //如果有多对数字的和等于S,输出两个数的乘积最小的。
* @author WGS
*
*/
public class FindTwoNumberSum { public boolean findTwoNumEqualS(int[] arr,int s){
if(arr==null || arr.length<2) return false; //方法一:简单的办法 时间复杂度O(n^2)
/*for(int i=0;i<arr.length;i++){
int num=arr[i];
for(int j=0;j<arr.length;j++){
if(i!=j){
num+=arr[j];
if(num==s){
return true;
}
else{
num-=arr[j];
}
} }
}*/ //方法二:双指针思想
int firstIndex=0;
int lastIndex=arr.length-1;
int sum=0; while(firstIndex<lastIndex){
sum=arr[firstIndex]+arr[lastIndex]; if(sum==s){
return true;
}else if(sum<s){
firstIndex++;
}else{
lastIndex--;
}
} return false; } public static void main(String[] args) {
FindTwoNumberSum f=new FindTwoNumberSum();
int[] array = new int[]{1,2};
System.out.println(f.findTwoNumEqualS(array, 3)); } }

剑指offer系列45---和为s的两个数字的更多相关文章

  1. 【剑指offer】42.和为S的两个数字

    42.和为S的两个数字 题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 示例: 输入:[1,2,4,7,11 ...

  2. 干货 | 剑指offer系列文章汇总

    下面是名企面试中经常会出现的面试题目,大家可以戳相应的题目查看题目细节,其答案会在紧接着的后一篇中出现  剑指offer系列  始 剑指offer—灯管问题(1)  剑指offer—10人电梯(2)  ...

  3. 剑指Offer(三十六):两个链表的第一个公共结点

    剑指Offer(三十六):两个链表的第一个公共结点 搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事' 获取更多算法.机器学习干货 csdn:https://blog.csdn.ne ...

  4. 《剑指offer》数组中只出现一次的数字

    本题来自<剑指offer> 数组中只出现一次的数字 题目: 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. 思路: 思路一:在<剑指of ...

  5. [简单-剑指 Offer 53 - II. 0~n-1中缺失的数字]

    [简单-剑指 Offer 53 - II. 0-n-1中缺失的数字] 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0-n-1之内.在范围0-n-1内的n个数字中有且只有一 ...

  6. 剑指 Offer 53 - II. 0~n-1中缺失的数字 + 二分法

    剑指 Offer 53 - II. 0-n-1中缺失的数字 Offer_53 题目详情 java代码 package com.walegarrett.offer; /** * @Author Wale ...

  7. 力扣 - 剑指 Offer 53 - II. 0~n-1中缺失的数字

    题目 剑指 Offer 53 - II. 0-n-1中缺失的数字 思路1 排序数组找数字使用二分法 通过题目,我们可以得到一个规律: 如果数组的索引值和该位置的值相等,说明还未缺失数字 一旦不相等了, ...

  8. 【剑指Offer】数组中只出现一次的数字 解题报告(Python)

    [剑指Offer]数组中只出现一次的数字 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-intervie ...

  9. 7、斐波那契数列、跳台阶、变态跳台阶、矩形覆盖------------>剑指offer系列

    题目:斐波那契数列 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). f(n) = f(n-1) + f(n-2) 基本思路 这道题在剑指offe ...

  10. 【Java】 剑指offer(2) 不修改数组找出重复的数字

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 在一个长度为n+1的数组里的所有数字都在1到n的范围内,所以数组中至少 ...

随机推荐

  1. dedecms 列表页 list 判断flag给定指定样式 (本地测试有效)

    {dede:list pagesize='10'} [field:array runphp='yes'] if (@me['flag']=='a') @me=' <a class="n ...

  2. java生成随机大数据文件

    package iie.udps.test; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutput ...

  3. USB电源管理

    在USB总线接口协议中,由于涉及电源供电,因此协议中规定了完整的电源管理方案.通过USB电源管理可以实现USB设备的激活.挂起.空闲和睡眠等,从而降低无效的功率消耗,实现系统电源的有效使用和合理分配. ...

  4. SSIS 组件点滴

    一 Sort组件 Sort组件是用来排序,我们在做join时也必须进行排序,排序的键值作为数据源关联的key 而在sort组件中有一个选项“Remove Rows with duplicate sor ...

  5. ss命令使用示例

    导读 ss是Socket Statistics的缩写,可以用来获取socket统计信息,它可以显示和netstat类似的内容.但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比n ...

  6. smartUpload组件文件上传

    public class SmartUploadServlet extends HttpServlet { public void doGet(HttpServletRequest request, ...

  7. leetcode 37 Sudoku Solver java

    求数独,只要求做出一个答案就可以. 刚开始对题意理解错误,以为答案是唯一的, 所以做了很久并没有做出来,发现答案不唯一之后,使用回溯.(还是借鉴了一下别人) public class Solution ...

  8. mysql数据库从库同步延迟的问题

    在从服务器上执行show slave status;可以查看到很多同步的参数,我们需要特别注意的参数如下,希望文章对各位会有所帮助. 在从服务器上执行show slave status;可以查看到很多 ...

  9. hdu1003 dp(最大子段和)

    题意:给出一列数,求其中的最大子段和以及该子段的开头和结尾位置. 因为刚学过DP没几天,所以还会这题,我开了一个 dp[100002][2],其中 dp[i][0] 记录以 i 为结尾的最大子段的和, ...

  10. spring源码学习之:spring容器的applicationContext启动过程

    Spring 容器像一台构造精妙的机器,我们通过配置文件向机器传达控制信息,机器就能够按照设定的模式进行工作.如果我们将Spring容器比喻为一辆汽车,可以将 BeanFactory看成汽车的发动机, ...