【面试题】之给定一个整数数组和一个目标值,在该数组中找出和为目标值的那两个整数并返回下标

面试题之给定一个整数数组和一个目标值,在该数组中找出和为目标值的那两个整数并返回下标
题目如下:
在这里插入图片描述
此题解题思路共有两种直接看方法:
方法一(简单型,直接for循环嵌套就可以搞定):
在这里插入图片描述
方法二:
解题思路:先把已知集合遍历转化为map,key为数组值,value为值数组值对应的下标,然后判断用目标值减去遍历的集合值是否包含在map中,返回结果就可以了。具体看图:
在这里插入图片描述
最后结果一模一样,推荐第二种写法,因为在数组元素较多的情况下如果使用方法一嵌套循环会大量消耗性能,方法二更佳。
修改于2022-12-2 力扣刷题以上解题方法对用例测试二不适用,特修改算法计算。利用map的特性,计算耗时由原来的60+毫秒,降低至5毫秒。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_51114236/article/details/122809154