当前位置: 首页 > news >正文

[编程之法]2.2 寻找和为定值的两个数

题目


输入一个整数和一个整数数组,在数组中查找一对数,满足他们的和正好是输入的那个整数,如果有多对数的和等于输入的整数,输出任意一对即可。例如,如果输入数组[1,2,4,5,7,11,15]和整数15,那么由于4+11=15,因此表明存在两个数能相加为15。

代码


#include <iostream>
#include <vector>
#include <map>
using namespace std;
class Solution
{
public:
    bool hasTwoNumEqualVal(int val, vector<int> nums)
    {
        //利用map存储
        map<int, bool> hashtable;
        //将存在的值设为true
        for (auto i : nums)
            hashtable[i] = true;
        //判断value-i的值在hash表中是否存在,存在则为true
        for (auto i : nums)
            if (hashtable[val - i] == true)
                return true;
        return false;
    }
};

思路


采用空间换时间的方法,利用map存储已经存在的数,如果value-nums[i]存在,则表示结果为true。时间复杂度为O(n),空间复杂度为O(n)

转载于:https://www.cnblogs.com/lizhenghao126/p/11053672.html

相关文章:

  • 智能对话机器人实战开发案例剖析(1)- 体系结构和分类
  • 第十二 包
  • java8 数据结构的改变(一)
  • 非正常卸载Chrome浏览器导致无法重新安装
  • FCC(ES6写法) Symmetric Difference
  • Thymeleaf系列五 迭代,if,switch语法
  • vi/vim基本使用命令
  • 排序算法(三)插入排序
  • 单词篇:(单词识记8~9)
  • LWIP学习笔记之传输控制协议(TCP)(七)
  • hadoop详细配置
  • LeetCode(56):合并区间
  • w10隐藏我的电脑中子文件夹
  • winform的Textbox设置只读之后使用ForeColor更改颜色
  • (十八)三元表达式和列表解析
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 0x05 Python数据分析,Anaconda八斩刀
  • 78. Subsets
  • DataBase in Android
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • exif信息对照
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • Otto开发初探——微服务依赖管理新利器
  • PAT A1092
  • Phpstorm怎样批量删除空行?
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • 测试开发系类之接口自动化测试
  • 构建工具 - 收藏集 - 掘金
  • 关于Java中分层中遇到的一些问题
  • 理解IaaS, PaaS, SaaS等云模型 (Cloud Models)
  • 如何解决微信端直接跳WAP端
  • 在Mac OS X上安装 Ruby运行环境
  • (2)nginx 安装、启停
  • (7)STL算法之交换赋值
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (区间dp) (经典例题) 石子合并
  • (五)IO流之ByteArrayInput/OutputStream
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • .Mobi域名介绍
  • .net Signalr 使用笔记
  • .NET 服务 ServiceController
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法
  • .NET命名规范和开发约定
  • /etc/X11/xorg.conf 文件被误改后进不了图形化界面
  • @我的前任是个极品 微博分析
  • [ 常用工具篇 ] AntSword 蚁剑安装及使用详解
  • [100天算法】-实现 strStr()(day 52)
  • [2]十道算法题【Java实现】
  • [AAuto]给百宝箱增加娱乐功能
  • [bzoj1006]: [HNOI2008]神奇的国度(最大势算法)