当前位置: 首页 > Web前端 > HTML

经典算法——两数之和

时间:2023-04-03 00:40:21 HTML

梦想开始的地方美丽的前言,哟,哟:●年轻的coder~你有没有想过自我提升~想想吧,决定从算法中抓取(单注)~●捡起来又放下,你放弃了多少次(单注?2)~●决定了!这次就让我来给大家梳理一下(单注?3)!skr~说实话,两个数的和!●《两数之和》是算法学习过程中最经典最基础的问题。●力口、自行车等网站的最高排名是两个数字之和。经典有其经典的道理。《两数之和》不算太难,也能体现出一些算法思想,作为初学者必看的一道题是再合适不过了。那么我们先看题目。给定一个整数数组nums和一个整数目标值target,请在数组中找到和为目标值target的两个整数,并返回它们的数组下标。您可以假设每个输入只有一个答案。但是,数组中的相同元素不能在答案中重复出现。您可以按任何顺序返回答案。●我们来详细分析一下题目●首先给定一个数组,里面有一些数字varnums=[11,15,3,8,2,6]●确定一个目标值vartarget=9●接下来是需求分析○从给定的nums数组中找出两个数,两个数之和为目标○只有一个唯一解○找到两个数后,返回两个数的下标●例如○这里的答案是2而5○因为nums[2]+nums[5]=9满足要求,开始暴力破解。作为一个入门级的程序员和小党,我觉得这个东西太简单了,我看不懂了!一一比较,一一搜索。一个小问题不会困扰真正的战士。看我破体保真元。下面是双循环暴力解法!vartwoSum=function(nums,target){for(vari=0;i{//创建一个Map对象的数据,键值对中的key为数组中元素与target的差值,值是这个元素的索引constmap=newMap();//存储方式{key使用目标差值=>value使用索引存储}//开始遍历数组for(leti=0;i