当前位置:首页 » 《随便一记》 » 正文

1.两数之和

2 人参与  2022年12月17日 15:53  分类 : 《随便一记》  评论

点击全文阅读


传送门:https://leetcode.cn/problems/two-sum/

目录

题目描述 

题解 


题目描述 

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

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

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

示例 1:

输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0,1] 。


示例 2:

输入:nums = [3,2,4], target = 6
输出:[1,2]


示例 3:

输入:nums = [3,3], target = 6
输出:[0,1]


 

题解 

哈希遍历

以输入nums=[2,7,11,15],target=9为例,本题要求返回数组中和为目标值的元素下标。故在创建的哈希表中以数组元素(nums[i])为key,以其下标(i)作为value

遍历输入用例nums=[2,7,11,15],并在哈希表中寻找是否含有key=target-nums[i]。若有则返回现在的数组下标i和key=target-nums[i]对应的value

上述方法先建表再遍历,需要两次循环且需考虑重复元素;如输入nums=[3,3],target=6,故不仅需要判断哈希表中是否含有key=target-nums[i],还需通过比较重复元素的下标来确保查到的元素不能为本身(hash[target-nums[i]]!=i)

下文中代码属于边建表边遍历,仅需一次循环且无需考虑重复元素。该方法的特点是每次向哈希表中添加一个元素时,均会判断哈希表中是否含有key=target-nums[i]且作用表中不含有key=target-nums[i]时,该元素才会被放入。这意味着当放入两个重复的元素时,前者因不满足条件而被放入哈希表,而后者因满足条件未被放入表中,即得出结果时表中没有两个重复的元素;故无需比较重复元素的下标来确认是重复元素中的哪一个

C++ 

class Solution {public:    vector<int> twoSum(vector<int>& nums, int target) {        map<int,int> hash;        for(int i=0;i<nums.size();i++){            if(hash.count(target-nums[i])){                return {hash[target-nums[i]],i};            }            hash[nums[i]]=i;        }        return {};    }};

C#

public class Solution {    public int[] TwoSum(int[] nums, int target) {        Dictionary<int,int> hash=new Dictionary<int,int>();        for(int i=0;i<nums.Length;i++){            if(hash.ContainsKey(target-nums[i])){                return new int[]{hash[target-nums[i]],i};            }            hash[nums[i]]=i;        }        return new int[]{};    }}

点击全文阅读


本文链接:http://m.zhangshiyu.com/post/49941.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 被公主抛弃后我爬上太后的床小说章节试读_沈昭月云舒太后全文免费无弹窗阅读_笔趣阁
  • 人面桃花长相忆阮雾梨结局+番外(阮雾梨闻砚辞)_人面桃花长相忆阮雾梨结局+番外阮雾梨闻砚辞
  • 日暮青山绿渐隐全书+后续+结局(许星森纪冰雪)_(日暮青山绿渐隐全书+后续+结局)列表_笔趣阁(许星森纪冰雪)
  • 小透明逆袭误撩后被大佬宠上天结局+番外(许惟昭方肃礼)_(小透明逆袭误撩后被大佬宠上天结局+番外)列表_笔趣阁(许惟昭方肃礼)
  • 望不穿月影西沉列表_望不穿月影西沉(顾南辰林晚意)
  • [余生尽沧海,万年路无归]小说后续在线免费阅读_「阿辰北辰修仙」口碑神作必读篇章
  • 小透明逆袭误撩后被大佬宠上天全书+后续+结局许惟昭方肃礼全书+后续+结局免费_(小透明逆袭误撩后被大佬宠上天全书+后续+结局)许惟昭方肃礼列表_笔趣阁(许惟昭方肃礼)
  • 陆依霜轩辕翊的_陆依霜轩辕翊的
  • [不踏月光不相逢]限免完整章节合集‌_[岳母如烟周枫]小说精彩章节试读
  • [重回八零渣夫悔婚娶了假千金,我换亲却嫁了真富二代]小说章节试读_顾磊赵春红柳小莲完整版在线阅读
  • 全文人面桃花长相忆阮雾梨后续全书+番外(闻砚辞阮雾梨)列表_全文人面桃花长相忆阮雾梨后续全书+番外
  • 全文繁花盛意难平(轩辕翊陆依霜)列表_全文繁花盛意难平

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1