[力扣 Hot100]Day1 两数之和

考完研了秽土转生,开始刷一下LeetCode准备一下复试,我尽量每个工作日一更

题目描述

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案。

思路

题目可以直接暴力做,如果想优于O(n^2)可以先排序然后用两个指针从首尾分别开始扫描。看评论区说可以用字典,做的时候没想出来。

代码

class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {vector<int>nums1 = nums;std::sort(nums.begin(), nums.end());int h = 0;int t = nums.size() - 1;while (h != t) {if (nums[h] + nums[t] == target) {bool flag = false;if(nums[h] == nums[t])flag = true;auto it1 = std::find(nums1.begin(), nums1.end(), nums[h]);h = std::distance(nums1.begin(), it1);vector<int>::iterator it2;if(flag)it2 = std::find(++it1, nums1.end(), nums[t]);elseit2 = std::find(nums1.begin(), nums1.end(), nums[t]);if (it2 != nums1.end()) {t = std::distance(nums1.begin(), it2);return vector<int>{h, t};} else {return vector<int>{};}} else if (nums[h] + nums[t] > target) {t--;} else {h++;}}return vector<int>{};}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/610055.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【低照度图像增强系列(3)】EnlightenGAN算法详解与代码实现

前言 ☀️ 在低照度场景下进行目标检测任务&#xff0c;常存在图像RGB特征信息少、提取特征困难、目标识别和定位精度低等问题&#xff0c;给检测带来一定的难度。 &#x1f33b;使用图像增强模块对原始图像进行画质提升&#xff0c;恢复各类图像信息&#xff0c;再使用目标检…

MySQL explan参数详细解读

MySQL的EXPLAIN语句用于分析SQL查询的执行计划&#xff0c;它返回的结果有助于理解MySQL如何处理和优化查询。以下是EXPLAIN结果中各列参数的详细解读&#xff1a; id&#xff1a; 标识SQL查询中的每个部分&#xff08;例如子查询、联合查询等&#xff09;的顺序。值越大表示该…

搜维尔科技:第九届元宇宙数字人设计大赛作品规范解读!

作品提交 参赛小组需要将作品上传至百度网盘&#xff0c;并将分享链接发送至frankaxis3d.cn邮箱。邮寄格式如下&#xff1a; 邮件标题&#xff1a;作品名称元宇宙数字人设计大赛作品 邮件内容标明&#xff1a;学校名称、院系名称、作品名称、作者名称、联系电话及指导老师名…

机器学习系列--R语言随机森林进行生存分析(2)

随机森林&#xff08;Breiman 2001a&#xff09;&#xff08;RF&#xff09;是一种非参数统计方法&#xff0c;需要没有关于响应的协变关系的分布假设。RF是一种强大的、非线性的技术&#xff0c;通过拟合一组树来稳定预测精度模型估计。随机生存森林&#xff08;RSF&#xff0…

Linux du和df命令

目录 一. df二. du 一. df ⏹用于显示系统级别&#xff0c;磁盘分区上的可用和已用空间的信息 -h&#xff1a;以人类可读的格式显示文件系统大小 ⏹每秒钟监视当前磁盘的使用情况 watch 用于周期性的执行特定的命令-n 1 表示每一秒刷新一次命令执行的结果df -h ./ 表示周期性…

OCR识别PDF扫描件

# OCR识别PDF 哪种OCR软件或程序接口可以将"扫描件PDF", 使用OCR识别成可复制文字, 并且不改变排版; 让一个800M的文件变成可复制的几十兆文件 - 期待回复

Salesforce Einstein详解

首先给大家强调的是Einstein AI在国内的阿里云版是不具备的&#xff0c;原因不言自喻。 一&#xff0e;saleforce Einstein简介 爱因斯坦是SalesForce花重金&#xff08;收购RelateIQ、机器学习公司PredictionIO与深度学习企业MetaMind&#xff0c;MetaMind创始人Richard Soc…

geemap学习笔记044:形态学操作--腐蚀、膨胀、开运算、闭运算

前言 形态学操作是图像处理中的一种基本操作&#xff0c;其主要目的是通过改变图像的形状或结构来提取图像中的特定信息、去除噪声、分割图像中的不同对象等。形态学操作通常应用于二值图像&#xff0c;其中图像中的像素只有两个取值&#xff0c;通常是0和1。 腐蚀(Erosion) …

Linux ps命令

一. 说明 用于显示系统中当前运行的进程信息。 提供了查看进程的不同视图和选项&#xff0c;允许用户了解系统上正在运行的进程的状态、资源使用情况等。 -e&#xff1a;显示所有进程&#xff0c;而不仅仅是与当前终端关联的进程。-f&#xff1a;以完整的格式显示进程信息&am…

【Machine Learning】Optimization

本笔记基于清华大学《机器学习》的课程讲义梯度下降相关部分&#xff0c;基本为笔者在考试前一两天所作的Cheat Sheet。内容较多&#xff0c;并不详细&#xff0c;主要作为复习和记忆的资料。 Smoothness assumption Upper Bound for ∇ 2 f ( x ) \nabla^2f(x) ∇2f(x): ∥ …

Kubernetes(K8S)云服务器实操TKE

一、 Kubernetes(K8S)简介 Kubernetes源于希腊语,意为舵手,因为首尾字母中间正好有8个字母,简称为K8S。Kubernetes是当今最流行的开源容器管理平台,是 Google 发起并维护的基于 Docker 的开源容器集群管理系统。它是大名鼎鼎的Google Borg的开源版本。 K8s构建在 Docker …

Spring Boot 接入 KMS 托管中间件密码第三方接口密钥

1. 需求 Nacos中关于中间件的密码&#xff0c;还有第三方API的密钥等信息&#xff0c;都是明文存储&#xff0c;不符合系统安全要求。现需对这些信息进行加密处理&#xff0c;Nacos只存储密文&#xff0c;并在服务启动时&#xff0c;调用云厂商的KMS接口进行解密&#xff0c;将…

QObject_timer

QObject int QObject::startTimer(int interval, Qt::TimerType timerType Qt::CoarseTimer) QObject本身自带的定时器函数&#xff0c;简单的定时任务不需要再使用QTimer&#xff0c;只需要重写timerEvent即可。 interval单位是毫秒&#xff0c;且必须大于等于0 如果interv…

C#编程-实现在文本文件中的读和写

实现在文本文件中的读和写 Stream类用于从文本文件读取数据和向文本文件写入数据。它是一个抽象类,支持向流读写字节。如果文件的数据仅是文本,那么您可以使用StreamReader类和StreamWriter类来完成相应的读和写任务。 StreamReader类 StreamReader类继承自从抽象类TextRea…

机器学习指南:如何学习机器学习?

机器学习 一、介绍 你有没有想过计算机是如何从数据中学习和变得更聪明的&#xff1f;这就是机器学习 &#xff08;ML&#xff09; 的魔力&#xff01;这就像计算机科学和统计学的酷炫组合&#xff0c;计算机从大量信息中学习以解决问题并做出预测&#xff0c;就像人类一样。 …

面试题:什么是雪花算法?啥原理?

SnowFlake 算法&#xff0c;是 Twitter 开源的分布式 ID 生成算法。 其核心思想就是&#xff1a;使用一个 64 bit 的 long 型的数字作为全局唯一 ID。在分布式系统中的应用十分广泛&#xff0c;且 ID 引入了时间戳&#xff0c;基本上保持自增的&#xff0c;后面的代码中有详细…

UV胶水能够粘接聚苯乙烯PS吗?需要注意哪些事项?又有哪些优势呢?

聚苯乙烯&#xff08;Polystyrene&#xff0c;简称PS&#xff09;是一种常见的合成聚合物&#xff0c;属于热塑性塑料。它是由苯乙烯单体聚合而成的&#xff0c;具有轻质、透明或半透明、电绝缘性好等特点。常见: 包装材料白色泡沫塑料&#xff08;EPS&#xff0c;用于包装、保…

不断发展的识别技术为多个行业带来新机遇

随着人工智能和机器学习技术的不断进步&#xff0c;识别技术已经得到了广泛的应用。识别技术是指通过计算机软件和硬件的配合&#xff0c;自动识别输入的信息并转换为可处理的数据的过程。这种技术的应用范围非常广泛&#xff0c;包括人脸识别、语音识别、文字识别、车牌识别等…

java注解学习

java注解 Annotation 为什么要学注解&#xff1f; 在日常开发中&#xff0c;基本都是在使用别人定义或是各种框架的注解&#xff0c;比如Spring框架中常用的一些注解&#xff1a;Controller、Service、RequestMapping&#xff0c;以此来实现某些功能&#xff0c;但是却不知道如…

神经网络(Neural Networks)

什么是机器学习 神经网络&#xff08;Neural Networks&#xff09;&#xff0c;也称为人工神经网络&#xff08;Artificial Neural Networks&#xff0c;ANNs&#xff09;是一种受到生物神经网络启发而设计的机器学习模型。神经网络由神经元&#xff08;或节点&#xff09;组成…