地特四等申論題
108年
[資訊處理] 程式設計概要
第 四 題
四、請寫出以下 Python 程式的執行結果。(15 分)
def secret(nums, target):
seen = {}
for index, num in enumerate(nums):
other = target - num
if other in seen:
return [seen[other], index]
else:
seen[num] = index
return []
print(secret([1,3,5], 4))
print(secret([2,3,6,8,10], 16))
print(secret([1,3,5], 7))
📝 此題為申論題
思路引導 VIP
看到此題應先辨識出這是經典的「Two Sum(兩數之和)」演算法。程式利用 Python 字典(Hash Map)紀錄已遍歷元素的數值與索引,透過計算 target - num 來尋找配對,重點在於一步步手動追蹤迴圈執行過程與字典內容的變化。
🤖
AI 詳解
AI 專屬家教
【解題思路】本題考查利用字典(Hash Map)實作的「兩數之和(Two Sum)」演算法,尋找陣列中相加等於 target 的兩個元素之索引值。
【詳解】
- 執行
print(secret([1,3,5], 4)):
▼ 還有更多解析內容