题目描述

输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。

思路

l表示左侧位置,r表示右侧位置。不断向中间靠拢,如果array[l]+array[r] == sum,则找到正确结果,如果l>=r说明无解。

AC代码

注意边界条件

class Solution {public:vector<int> FindNumbersWithSum(vector<int> array, int sum) {vector<int>res;int l = 0, r = array.size() - 1;while(l < r) {if(array[l] + array[r] == sum) { // 正确结果res.push_back(array[l]);res.push_back(array[r]);return res;} else if(array[l] + array[r] > sum) { // 结果偏大,右侧缩小--r;} else {  // 结果偏小,左侧增加++l;}}return res;}
};

剑指Offer值和为S的两个数字相关推荐

  1. LeetCode_剑指 Offer 57. 和为s的两个数字(利用set、双撞指针两种思路 Java实现)

    题目描述:剑指 Offer 57. 和为s的两个数字 输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s.如果有多对数字的和等于s,则输出任意一对即可. 示例 1: 输入:n ...

  2. 剑指offer:和为S的两个数字

    题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 解题思路 class Solution { public:v ...

  3. 《剑指offer》和为s的两个数字

    题目:输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 输出描述: 对应每个测试案例,输出两个数,小的先输出. 解析:由 ...

  4. [剑指Offer] 42.和为S的两个数字

    题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 输出描述: 对应每个测试案例,输出两个数,小的先输出. [思 ...

  5. 【算法】剑指 Offer 57. 和为s的两个数字

    1.概述 输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s.如果有多对数字的和等于s,则输出任意一对即可. 示例 1: 输入:nums = [2,7,11,15], tar ...

  6. 剑指 Offer II 006. 排序数组中两个数字之和

    由于题目中数组已经排好序,所以可以用双指针 双指针: i=0,j=nums.size( )-1 当 i<j 时循环,当目标小于target时i++,当目标大于target时,j-- 当目标小于t ...

  7. 【LeetCode】剑指 Offer 39. 数组中出现次数超过一半的数字

    [LeetCode]剑指 Offer 39. 数组中出现次数超过一半的数字 文章目录 [LeetCode]剑指 Offer 39. 数组中出现次数超过一半的数字 一.摩尔投票法 一.摩尔投票法 核心理 ...

  8. 【LeetCode】剑指 Offer 53 - I. 在排序数组中查找数字 I

    [LeetCode]剑指 Offer 53 - I. 在排序数组中查找数字 I 文章目录 [LeetCode]剑指 Offer 53 - I. 在排序数组中查找数字 I 一.二分法 总结 一.二分法 ...

  9. 剑指offer——面试题7:用两个栈实现队列

    剑指offer--面试题7:用两个栈实现队列 Solution1: 注意栈的基本操作与vector略有不同~ class Solution { public:void push(int node) { ...

最新文章

  1. 导致定时器失效_IIS进程回收导致定时器失效的解决方法(CMD命令)
  2. jQuery解决鼠标单双击问题
  3. 安装VMWare时 the system administrator has set policies to prevent this installation
  4. 一张图搞定SDF的概念
  5. VC实现表单提交并设置获取COOKIE:
  6. python股票接口_Python 从 sina 股票数据接口读取数据,并保存到 MySQL 数据库
  7. 微信小程序开发遇到的bug及填坑
  8. Linux中JBOSS 安装
  9. pyplot中文手册_Matplotlib中文手册 PDF 下载
  10. R语言使用gbm包的gbm函数拟合梯度提升机回归模型:使用predict函数和训练好的模型进行预测推理、计算回归模型的评估指标MAE、MSE、RMSE、R方等指标
  11. 创新电影院5G的未来
  12. 世界经典电影Top 50
  13. Linux Shell 内建命令 : sh命令详解
  14. 2021年CVPR论文Deep Two-View Structure-from-Motion Revisited阅读笔记
  15. IP-Guard桌面安全解决方案
  16. 谷歌chrome浏览器ERR_SPDY_PROTOCOL_ERROR错误
  17. python网络爬虫 百度网盘_百度网盘爬虫(如何爬取百度网盘)
  18. 谷歌地球.足不出户让你看遍天下2.3.0修改版无弹窗无影流部分安卓11以上系统不兼容
  19. 微服务探索之路03篇-docker私有仓库Harbor搭建+Kubernetes(k8s)部署私有仓库的镜像
  20. 最新版的QQ如何查看好友是否隐身

热门文章

  1. pytorch学习笔记(八):softmax回归的从零开始实现
  2. nlp-tutorial代码注释1-1,语言模型、n-gram简介
  3. 最新cuDNN 7[Linux]百度云下载[免费] 适用于CUDA 10.0
  4. Python之Numpy常用操作
  5. 敏捷开发“松结对编程”实践之三:共同估算篇(大型研发团队,学习型团队,139团队,师徒制度,敏捷设计,估算扑克,扑克牌估算)...
  6. 14 事务控制和锁定语句
  7. MYSQL-主键、外键
  8. bzoj1853: [Scoi2010]幸运数字 dp+容斥原理
  9. Hive_Hive的数据模型_视图
  10. 有关send()和recv()函数的理解