LeetCode 151. 翻转字符串里的单词(栈)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 151. 翻转字符串里的单词(栈)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目信息
- 2. 解題
1. 題目信息
給定一個字符串,逐個翻轉字符串中的每個單詞。
示例 1:輸入: "the sky is blue" 輸出: "blue is sky the" 示例 2:輸入: " hello world! " 輸出: "world! hello" 解釋: 輸入字符串可以在前面或者后面包含多余的空格,但是反轉后的字符不能包括。 示例 3:輸入: "a good example" 輸出: "example good a" 解釋: 如果兩個單詞間有多余的空格,將反轉后單詞間的空格減少到只含一個。說明:
無空格字符構成一個單詞。
輸入字符串可以在前面或者后面包含多余的空格,但是反轉后的字符不能包括。
如果兩個單詞間有多余的空格,將反轉后單詞間的空格減少到只含一個。
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/reverse-words-in-a-string
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
《劍指Offer》同題:面試題58 - I. 翻轉單詞順序
2. 解題
- 利用棧先進后出
- 字符不為空,且不在最后一個位置時,加入字符串
- 字符不為空,且在最后一個位置時,加入字符串,并入棧
- 字符為空,如果當前字符串不為空,字符串入棧
- 最后依次輸出棧頂,中間加空格,末尾沒有空格
- 預先在s最后加一個空格,能簡化代碼
總結
以上是生活随笔為你收集整理的LeetCode 151. 翻转字符串里的单词(栈)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html 缩略图点击预览,jQuery图
- 下一篇: LeetCode 1122. 数组的相对