中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

leecode如何解決翻轉字符串里的單詞問題

發布時間:2022-01-05 16:23:18 來源:億速云 閱讀:103 作者:小新 欄目:大數據

小編給大家分享一下leecode如何解決翻轉字符串里的單詞問題,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

給定一個字符串,逐個翻轉字符串中的每個單詞。

示例 1:輸入: "the sky is blue"輸出: "blue is sky the"
示例 2:
輸入: "  hello world!  "輸出: "world! hello"解釋: 輸入字符串可以在前面或者后面包含多余的空格,但是反轉后的字符不能包括。


示例 3:輸入: "a good   example"輸出: "example good a"解釋: 如果兩個單詞間有多余的空格,將反轉后單詞間的空格減少到只含一個。

說明:

無空格字符構成一個單詞。

輸入字符串可以在前面或者后面包含多余的空格,但是反轉后的字符不能包括。

如果兩個單詞間有多余的空格,將反轉后單詞間的空格減少到只含一個。


進階:

請選用 C 語言的用戶嘗試使用 O(1) 額外空間復雜度的原地解法。



考點:字符串的相關操作

思路:

  • 轉換為字符串列表,反轉拼接

  • 雙指針,遇到空格保存到列表中

class Solution:    def reverseWords(self, s: str) -> str:        if s is None or len(s) < 1:            return s        '''        new_s = s.strip(' ')        new_s = new_s.split()        new_s.reverse()        return ' '.join(new_s)        '''
       # 雙指針        res = []        s = s.strip()        i = j = len(s) - 1        res = []        while i >= 0:            while i >= 0 and s[i] != ' ':                i -= 1   # 搜索首個空格            res.append(s[i + 1: j + 1])    # 添加單詞            while s[i] == ' ':                i -= 1   # 跳過單詞間空格            j = i   # j 指向下個單詞的尾字符        return ' '.join(res) # 拼接并返回

以上是“leecode如何解決翻轉字符串里的單詞問題”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

漳州市| 钟山县| 班戈县| 安宁市| 石景山区| 尼木县| 珲春市| 正安县| 台州市| 扶余县| 乐亭县| 宜兴市| 万州区| 永兴县| 江北区| 望江县| 娄烦县| 甘孜县| 长沙市| 时尚| 威海市| 鲜城| 屏山县| 阿城市| 绵竹市| 海门市| 永仁县| 八宿县| 汤原县| 砀山县| 宁国市| 正阳县| 昌乐县| 巨野县| 武胜县| 扶余县| 西乌珠穆沁旗| 桐柏县| 德庆县| 高密市| 辽源市|