您好,登錄后才能下訂單哦!
本篇內容介紹了“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 List
class 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] = index
if __name__ == "__main__":
l:list = [2,7,11,15,12]
target:int = 19
s = Solution()
print(s.twoSum(l,target))
Go Version
package main
import "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中怎么找出目標值的整數”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。