學習路線/陣列與雜湊

1. 兩數之和

Easy

Two Sum

ArrayHash Table

題目描述

給定一個整數陣列 nums 和一個整數目標值 target,請找出和為目標值的兩個整數,並返回它們的下標。每組輸入恰好有一個解,且同一元素不能使用兩次。

LeetCode 1原題連結 →

解法思路

  1. 使用 Hash Map(字典)儲存已遍歷過的數字及其索引
  2. 對每個數字計算 complement = target - nums[i]
  3. 若 complement 已在 Hash Map 中,直接返回兩個索引
  4. 一次遍歷即可完成,避免雙重迴圈的暴力解法

複雜度分析

  • 時間複雜度:O(n)
  • 空間複雜度:O(n)

陣列 nums

2
[0]
7
[1]
11
[2]
15
[3]

Hash Map

(空)
演算法準備開始。我們建立一個空的 Hash Map 來儲存看過的數字及其索引。
1 / 5