剑指offer系列之40:和为的两个数字

剑指Offer(leetcode版) 目录剑指Offer-03 数组中重复的数字剑指Offer-04 二维数组中的查找剑指Offer-05 替换空格剑指Offer-06 从尾到头打印链表剑指Offer-07 重建二叉树剑指Offer-09 用两个栈实现队列剑指Offer-10-I 斐波那契数列剑指Offer-10-II 青蛙跳台阶问题剑指Offer-11 旋转数组的最小数字剑指Offer-12 矩阵中的路径剑指Offer-13 机器人的运动范围剑指Offer-14-I 剪绳子剑指Offer-14-II 剪绳子II剑指Offer-15 二进制中1 阅读详情

题目描述:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。

思路:最慢的方法是固定一个数字,然后一次遍历数组得到和为s的另一个数字,但这种算法时间复杂度太高。因为数组是已经排序的,可以先在数组中选择两个数字,如果它们的和等于输入的s,就找到了要找的数字,如果它们的和小于s,则可以让较小的数字往后移动,如果它们的和大于s,则可以让较大的数字向前移动,知道和等于输入的s为止。

import java.util.ArrayList;
public class Solution {
    public ArrayList<Integer> FindNumbersWithSum(int [] array,int sum) {
        ArrayList<Integer> result = new ArrayList<Integer>();
        if(array == null || array.length < 2){
            return result;
        }
        int length = array.length;
        int leftNum = 0;
        int rightNum = length-1;
        while(leftNum < rightNum){
            if((array[leftNum]+array[rightNum]) == sum){
                break;
            }else if((array[leftNum]+array[rightNum]) < sum){
                leftNum = leftNum+1;
            }else{
                rightNum = rightNum - 1;
            }
        }
        if(leftNum < rightNum){
            result.add(array[leftNum]);
            result.add(array[rightNum]);
        }
        return result;
    }
}
Python版剑指Offer题解 Python版剑指Offer题解 本题解配合leetcode中剑指Offer刷题使用 参考链接:图解算法数据结构 文章目录剑指 Offer 03. 数组中重复的数字剑指 Offer 04. 二维数组中的查找剑指 Offer 05. 替换空格剑指 Offer 06. 从尾到头打印链表剑指 Offer 07. 重建二叉树剑指 Offer 09. 用两个栈实现队列剑指 Offer 10- I. 斐波那契数列剑指 Offer 10- II. 青蛙跳台阶问题剑指 Offer 11. 旋转数组的最小数字剑指 Offe 阅读详情

相关推荐

【剑指offer】31-40题

31.求连续子数组(包含负数)的最大和思路:若和小于0,则将最大和置为当前值,否则计算最大和。代码实现:public int FindGreatestSumOfSubArray(int[] array) { if (array == null || array.length == 0) return 0; int cur = array[0]; int gre

白夜行 4844

剑指 Offer 40.最小的k个数

设计一个算法,找出数组中最小的k个数。以任意顺序返回这k个数均可。

IOSSHAN的博客 544

Hi3516CV610开发板实战:从零搭建智能视觉监控系统

本文详细介绍了从零开始基于Hi3516CV610开发板搭建智能视觉监控系统的完整实战流程。涵盖硬件连接、系统配置、摄像头集成、网络设置、固件烧录到视频处理与智能分析功能开发,提供了丰富的实践经验和调试技巧,帮助开发者快速掌握嵌入式视觉系统开发。

vvv99的博客 564

剑指 Offer 40. 最小的k个数

刷题总结

qq_39473176的博客 379

Jetson编译安装pycuda

可使用nvcc --version查看是否有信息输出,若没有,且安装cuda的情况下,需要手动将CUDA 的路径添加到环境变量中。编译生成_pvt_struct.cpython-38-aarch64-linux-gnu.so文件。基于jetson orin nano jetpack512模块上安装pycuda。4、获取pycuda源码(版本根据实际情况获取)2、进入conda环境并安装cuda工具包。9、若未检测出来需要清除并强制编译。7、编译成功后安装pycuda。5、配置编译并设置环境变量。

qq_48175141的博客 972

sec_uid

webcast_uid转sec_uid,webcast_uid转uid,webcast_uid转dy号

m0_56967679的博客 4421

LeetCode 剑指 Offer 40

既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。很多人感叹“学习无用”,实际上之所以产生无用论,是因为自己想要的与自己所学的匹配不上,这也就意味着自己学得远远不够。// // 小于等于基准值的个数。// // 快排的基准值。// // 维护小根堆的性质。// // 建立一个小根堆。

2301_76238237的博客 841

独家开源|RK3588 平台 YOLOv5 Android 源码级解析:NPU 量化、多线程与目标跟踪实战

本文将带你完成一个完整的AI视觉项目:在搭载RK3588芯片的Android开发板上运行实时目标检测与跟踪应用。实战目标:成功运行官方YOLOV5摄像头实时检测案例技术深度:深入理解RKNN开发框架和源码实现核心技能:掌握NPU推理、多线程并发、目标跟踪等关键技术。

m0_71589036的博客 193

剑指 Offer系列——剑指 Offer 40. 最小的k个数

力扣C++打卡(12.12)!✊✊✊🌈大家好!本篇文章将继续介绍关于栈队列堆的OJ题,题目来自力扣:剑指 Offer 40. 最小的k个数,展示代码语言暂时为:C++代码 😇。

君莫笑lucky的博客 272

目标检测基础

目标检测是计算机视觉的核心任务,需同时对图像中的物体进行定位与识别。传统方法存在速度慢、精度低等问题,而深度学习显著推动了该领域发展,使实时高精度检测成为可能。检测的核心是为每个物体预测边界框坐标和类别标签。为实现高效检测,引入了锚框机制,通过预设多尺度、多宽高比的候选区域,缩小预测偏移量,提升定位精度。训练时,通过计算锚框与真实边界框的交并比 (IoU) 确定正负样本,并基于此生成类别标签和坐标偏移量作为监督信号。该方法提升了检测器对多尺度目标和复杂场景的鲁棒性。

盼小辉丶的博客 2761

【GameFramework框架内置模块】6、实体(Entity)

实体Entity就是一个实体的基本单元,类似于Unity的GameObject对象本体,然后这个本体上面附加其他各种各样组件,才能实现各种各样的功能。一般需要在游戏运行时动态加载的游戏对象,比如怪物、武器、子弹、特效,都需要给这个物体挂载一个实体Entity,这样的话就可以方便的对实例出来的对象进行管理。下面就来看一下如何使用吧。

优快云博客专家,Unity3D高级软件工程师,《Unity 3D从入门到实战》作者。 3137

leetcode 剑指offer面试题40. 最小的k个数

题干: 输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。 示例 1: 输入:arr = [3,2,1], k = 2 输出:[1,2] 或者 [2,1] 示例 2: 输入:arr = [0,1,2,1], k = 1 输出:[0] 限制: 0 <= k <= arr.length <= 10000 0 <= arr[i] <= 10000 解题方法: 1.快速排序:将给出的数组由小到大排

weixin_43978936的博客 235

L3自动驾驶时代,域控制器核心解析(第一篇:架构演进与五域基础)

本文作为L3域控制器系列的第一篇,核心梳理了3个关键内容:L3时代为什么必须用域控制器:解决分布式ECU的协同、算力、迭代难题;域控制器的演进路线:从分布式ECU→域集中式→中央计算平台;博世五域架构的核心解析:五大域的定位、功能与典型方案。后续将持续更新系列文章,重点覆盖:第二篇:L3对域控制器的关键技术要求(传感器、算力、线控、软件、通信);第三篇:域控制器全产业链拆解(上游芯片、中游器件、下游总成);第四篇:域控制器的产业机遇与国产替代进展。

getusushu的博客 543

剑指 Offer 总结 - leetcode 剑指offer系列

剑指 Offer 系列完结撒花!! ???????? 本篇文章是对整个系列的精华总结, 对系列的每篇文章进行了分类, 并用一句话概括每道题的思路, 方便大家理解和记忆, 当然也包含原文完整链接供大家参考 总的来说, 写这个系列耗费了我不少精力, 不过我也很开心能和大家分享, 真心希望能对大家有所帮助, 也希望大家能够多多点赞转发和分享, 让更多人看到, 谢谢~ 接下来我需要休整一段时间来准备新的系列了, 中间也可能会有一些不定期更新. 至于新系列是什么呢? 大家敬请期待 ???? P.S.

随便发挥的博客 3567

【用unity实现100个游戏之19】制作一个3D传送门游戏,实现类似鬼打墙,迷宫,镜子,任意门效果(附项目源码)

本文介绍了Unity中实现传送门效果的完整流程。通过第一人称角色控制器实现移动,使用PortalView脚本和自定义Unlit Shader渲染门内场景,巧妙利用相机位置和旋转同步实现动态视角。重点解决了近裁剪面问题,确保远距离渲染正确性。最后通过PortalTeleporter脚本实现传送功能,检测碰撞并计算相对位置进行瞬移。该方法无需复杂插件,代码简洁高效,适用于各类3D场景中的传送门实现。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

《剑指offer》Java版全系列题解(2021版,持续更新!)

《剑指offer》Java版全系列题解(2021版,持续更新!) 本系列记录了最新版 《剑指Offer》 的题解过程与代码,因为原书是c语言。这里用Java代码复现并优化,并包含解题分析。 希望各位能够点赞,收藏!关注我! 每日更新! 如果在准备java面试,可以看看我的另外一篇文章! Java面试复习体系总结(2021版,持续更新) csdn题解(包含详细分析过程,代码) 力扣链接 剑指Offer系列(java版,详细解析) 03. 数组中重复的数字 剑指 Offer 03. 数组中重复

Viper的程序员修炼手册 2万+

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

剑指offer系列——剑指 Offer 57. 和为s的两个数字

大家好!本篇文章将介绍的剑指offerOJ题,来自力扣[剑指 Offer 57. 和为s的两个数字],本文将以这道题为背景,介绍经典的双“指针”,此“指针”非彼指针,其实叫左右索引更好一点,不会和C中的指针混起来,双指针只是一种做题技巧,但是大家都这么叫的啊,展示代码语言暂时为:Java,C/C++。

未见花闻的博客 1215

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

[剑指offer] JAVA版题解(完整版)

本文首发于我的个人博客:尾尾部落 序号 题解 牛客 OJ 数据结构类型 03 [剑指offer] 二维数组中的查找 二维数组中的查找 数组 04 [剑指offer] 替换空格 替换空格 字符串 05 [剑指offer] 从尾到头打印链表 从尾到头打印链表 链表 06 [剑指offer] 重建二...

尾尾部落 6万+

剑指offer(34-40题)详解

文章目录34 第一个只出现一次的字符35 数组中的逆序数36 两个链表的第一个公共节点37 数字在排序数组中出现的次数38 二叉树的深度3 欢迎关注个人数据结构专栏哈 微信公众号:bigsai 声明:大部分题基本未参考题解,基本为个人想法,如果由效率太低的或者错误还请指正!,如果有误导,还请指正! 34 第一个只出现一次的字符 题目描述 在一个字符串(0<=字符串长度<=1000...

bigsai 7391

剑指offer(40)数组中只出现一次的两个数字

/** * 题目:数组中数字出现的次数。数组中只出现一次的两个数字,要求空间o(1)时间o(n). eg:{2,4,3,6,3,2,5,5}结果是4、6 * 思路:剑指offer 异或思想,任何数和它本身异或的值为0. * 我们依旧从头到尾异或每个数字,那么最终的结果就是这两个只出现一次的数字的异或结果,由于两个数不同,因此这个结果数字中一定有一位为1,把结果中第一个1的位置记为第n位。 ...

hxl0925的博客 132

剑指offer:面试题40——数组中只出现一次的数字

剑指offer:面试题40——数组中只出现一次的数字 题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 要求时间复杂度是O(n),空间复杂度是O(1)。 class Solution { public: bool IsBit1(int num,unsigned int indexBit) { //判断数在二进制表示中...

MereX的博客 463

LeetCode刷题总结 - 剑指offer系列 - 持续更新

LeetCode刷题总结

qq_45464560的博客 5243

【剑指Offer】个人学习笔记_57_和为s的 两个数字&连续正数序列

目录题目:[剑指 Offer 57. 和为s的两个数字](https://leetcode-cn.com/problems/he-wei-sde-liang-ge-shu-zi-lcof/)题目分析初始解答:学习他人:方法一:方法二:方法三:方法四:题目:[剑指 Offer 57 - II. 和为s的连续正数序列](https://leetcode-cn.com/problems/he-wei-sde-lian-xu-zheng-shu-xu-lie-lcof/)题目分析初始解答:学习他人:方法一:方法二:

苏柒的博客 727

剑指 Offer 57. 和为s的两个数字

剑指 Offer 57. 和为s的两个数字题目描述代码实现 题目描述 输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。 示例1: 输入:nums = [2,7,11,15], target = 9 输出:[2,7] 或者 [7,2] 示例2: 输入:nums = [10,26,30,31,47,60], target = 40 输出:[10,30] 或者 [30,10] 限制: 1 <= nums.length <=

GridWorker 180

剑指 Offer 57. 和为s的两个数字 - 力扣(LeetCode)

剑指 Offer 57. 和为s的两个数字 - 力扣(LeetCode)

Onwaier的博客 616
上一篇: 剑指offer系列之39:数组中只出现1次的数字
下一篇: 剑指offer系列之41:和为s的连续整数序列
ly_main
博客等级 码龄11年 6粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值