本篇内容介绍了“Python中怎么找出目标值的整数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。
示例:
给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]
给定数组arr,初始化字典dic,目标值target,a,b为数组的元素
如果存在这样的关系a+b=target,如果a的下标为a_1,则可以得到dic[target-a]=a_1。
简单数就是,当前的元素的下标和目标值减去当前元素获取的值做一个映射,如果映射存在就可以找到这两个数了。
Python Version
from typing import Listclass Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: d =dict() for index,item in enumerate(nums): if item in d: return [d[item],index] else: d[target-item] = index #或者 # if target-item in d: # return [d[target-item],index] # d[item] = indexif __name__ == "__main__": l:list = [2,7,11,15,12] target:int = 19 s = Solution() print(s.twoSum(l,target))
Go Version
package mainimport "fmt"func solution(nums []int,target int) []int{ m:=make(map[int]int) for index,value := range nums { if w,ok:=m[value];ok{ return []int{w,index} } else{ m[target-value] = index } } return nil}func main() { nums:=[]int{2,7,11,15,12} fmt.Println("nums",nums) target:=19 fmt.Println(solution(nums,target))}
“Python中怎么找出目标值的整数”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/u/4042528/blog/4488153