1. 程式人生 > 其它 >程式設計實踐筆記No.17

程式設計實踐筆記No.17

技術標籤:程式設計實踐

程式設計實踐筆記No.17


寫在最前面,程式設計一直是我的短板,希望在leetcode練習中獲得進步!

參考Datawhale組隊學習中“LeetCodeTencent”

題目一344 反轉字串

連結

編寫一個函式,其作用是將輸入的字串反轉過來。輸入字串以字元陣列 char[] 的形式給出。
不要給另外的陣列分配額外的空間,你必須原地 修改輸入陣列、使用 O(1) 的額外空間解決這一問題。

雙指標

指標 left 與 right 列表兩側,指向的物件進行交換
當兩指標相遇時,結束返回新列表。

程式碼

class Solution:
    def reverseString(self, s: List[str]) -> None:
        """
        Do not return anything, modify s in-place instead.
        """
        leight = len(s)
        left = 0
        right = leight -1
        while left < right:
            t =
s[left] s[left] = s[right] s[right] = t left +=1 right-=1 return s

在這裡插入圖片描述

題目二 238 除自身以外陣列的乘積

連結

給定長度為 n 的整數陣列 nums,其中 n > 1,返回輸出陣列 output,其中 output[i] 等於 nums 中除 nums[i] 之外其餘各元素的乘積。

按詞讀取

詞中進行反轉

程式碼

class Solution:
    def reverseWords(self, s:
str) -> str: return " ".join(word[::-1] for word in s.split(" "))

在這裡插入圖片描述
連結