快轉到主要內容
  1. LeetCode/

LeetCode 2325: Decode the Message

·1 分鐘· ·
LeetCode Daily Easy
Wei Yi Chung
作者
Wei Yi Chung
Working at the contributing of open source, distributed systems, and data engineering.
目錄

基本資料
#

難易度: easy 第一次嘗試: 2025-04-22

  • 總花費時間:10:00.00

解題思路
#

我們可以從 key 字串建立一個對應表,把每個字母依序對應到從 'a' 開始的字母。
建立好替換表後,只要遍歷 message,根據對應表將每個字元轉換並串接起來即可。
這是一個 O(n) 的解法,只需要遍歷一次陣列。

解法
#

class Solution:
    def decodeMessage(self, key: str, message: str) -> str:
        idx_map = {}
        first_ord = 97  # 'a' 的 ASCII 編碼
        for s in key:
            if s != " " and s not in idx_map:
                idx_map[s] = chr(first_ord)
                first_ord += 1
        return "".join(idx_map[s] if s != " " else s for s in message)

收穫
#

NA

遇到的問題
#

NA

相關文章

LeetCode 724: Find Pivot Index
·1 分鐘
LeetCode Daily Easy Prefix Sum
LeetCode 解題紀錄
LeetCode 1534: Count Good Triplets
·2 分鐘
LeetCode Daily Easy Prefix Sum
LeetCode 解題紀錄
LeetCode 2843: Count Symmetric Integers
·1 分鐘
LeetCode Daily Easy Digit DP
LeetCode 解題紀錄
LeetCode 617: Merge Two Binary Trees
·1 分鐘
LeetCode Daily Easy Tree
LeetCode 解題紀錄
LeetCode 2145: Count the Hidden Sequences
·1 分鐘
LeetCode Daily Medium
LeetCode 解題紀錄
LeetCode 781: Rabbits in Forest
·1 分鐘
LeetCode Daily Medium
LeetCode 解題紀錄