程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> LeetCode--Reverse Words in a String,leetcode

LeetCode--Reverse Words in a String,leetcode

編輯:C++入門知識

LeetCode--Reverse Words in a String,leetcode


Given an input string, reverse the string word by word.

For example,
Given s = " the sky is blue ",
return "blue is sky the".

click to show clarification.

Clarification:
What constitutes a word?
A sequence of non-space characters constitutes a word.
Could the input string contain leading or trailing spaces?
Yes. However, your reversed string should not contain leading or trailing spaces.
How about multiple spaces between two words?
Reduce them to a single space in the reversed string.

 

用stringstream讀到流中忽略空格,在重新賦給一個新的string,添加空格

class Solution {
public:
    void reverseWords(string &s) {
    string word;
    stack<string> buf;
    stringstream ss(s);
    while(ss>>word)
    {
        buf.push(word);
    }
    string res = "";
    bool first = true;
    while(!buf.empty())
    {
        if(!first)
            res += " ";
        res +=     buf.top();
        buf.pop();
        first = false;
    }
    s = res;
    }
};

google了python的代碼。。。竟然就一行。。。。我勒個去。

class Solution:
    # @param s, a string
    # @return a string
    def reverseWords(self, s):
        return ' '.join([word[::-1] for word in s[::-1].split()])

 


in a word與in words的不同

in other words
換句話說, 也就是說
in a word
一句話, 總而言之
in so many words
一字不差地(說); 清楚地(說); 直截了當地(說)
in word
口頭上
 

in words 與 in a word 的不同

in words 用文字表明
1. Spoke in measured words.
說話很有分寸
2.To express oneself in words.
用言辭表達自己
3.To represent in words; describe.
描述用文字表示;描述

in a word 總之=in summary=to sum up=Anyway
通常用於文章結尾,表示概括總結
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved