作者sustainer123 (caster )
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Wed May 1 10:03:52 2024
https://leetcode.com/problems/reverse-prefix-of-word
2000. Reverse Prefix of Word
給定一string與一character 找到該character 假定該character的index為i
翻轉word[0]到[i]並回傳 假設無該character 回傳原word
For example, if word = "abcdefd" and ch = "d", then you should reverse the
segment that starts at 0 and ends at 3 (inclusive). The resulting string will
be "dcbaefd".
Return the resulting string.
Example 1:
Input: word = "abcdefd", ch = "d"
Output: "dcbaefd"
Explanation: The first occurrence of "d" is at index 3.
Reverse the part of word from 0 to 3 (inclusive), the resulting string is
"dcbaefd".
Example 2:
Input: word = "xyxzxe", ch = "z"
Output: "zxyxxe"
Explanation: The first and only occurrence of "z" is at index 3.
Reverse the part of word from 0 to 3 (inclusive), the resulting string is
"zxyxxe".
Example 3:
Input: word = "abcd", ch = "z"
Output: "abcd"
Explanation: "z" does not exist in word.
You should not do any reverse operation, the resulting string is "abcd".
Constraints:
1 <= word.length <= 250
word consists of lowercase English letters.
ch is a lowercase English letter.
思路:
遍歷字串尋找字母 開個list記錄找過的字母
找到目標字母就翻轉list然後加上沒找過的部分並回傳
沒找到回傳原字串
Python Code:
class Solution:
def reversePrefix(self, word: str, ch: str) -> str:
result = []
for i in range(len(word)):
if word[i] == ch:
result.append(word[i])
return "".join(reversed(result))+word[i+1:]
result.append(word[i])
return word
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.43.148.18 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1714529035.A.C22.html
推 SecondRun: 大師 放假還刷 05/01 10:09
→ sustainer123: 快變無業遊民了 姆咪 05/01 10:14
推 JIWP: 大師,你今年畢業? 05/01 10:19
→ sustainer123: 對 今年 05/01 10:29
推 digua: 這上禮拜期中有考欸我不會寫 05/01 10:45