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

[LeetCode] Reverse Words in a String

編輯:關於C++

 

Reverse Words in a String

 

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

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

Update (2015-02-12):
For C programmers: Try to solve it in-place in O(1) space.

解題思路:

1、若用C#實現,非常簡單,用字符串的split函數,將非空的子串倒著連接起來即可。

2、C++似乎沒有split函數,需要我們自己實現一下,返回vector類型。但是這樣需要掃描兩次字符串。

3、可以只掃描一次字符串。下面是代碼。有幾個特殊情況需要考慮(1)可能會有多個空格符(2)可能沒有空格符

 

class Solution {
public:
    void reverseWords(string &s) {
        string result="";
        int len = s.length();
        string word="";
        for(int i=0; i

 

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