翻转字符串

给定一个字符串,逐个翻转字符串中的每个单词。

说明

  • 单词的构成:无空格字母构成一个单词
  • 输入字符串是否包括前导或者尾随空格?可以包括,但是反转后的字符不能包括
  • 如何处理两个单词间的多个空格?在反转字符串中间空格减少到只含一个

标签

字符串处理

code

class Solution {
public:
/**
* @param s : A string
* @return : A string
*/
string reverseWords(string s) {
// write your code here
string word, line;
int size=s.size();
int i=size-1, j, begin=size-1, end=size-1; if(s.empty())
return string(); while(i >= 0) {
while(s[i]==' ' && i>=0) {
begin--;
end--;
i--;
}
while(s[i]!=' ' && i>=0) {
begin--;
i--;
}
word.resize(0);
for(j=begin+1; j<=end; j++)
word.append(1, s[j]);
}
if(begin == 0)
line = line + word;
else
line = line + word + " ";
end = begin;
}
return line;
}
};

最新文章

  1. gulp 自动添加版本号
  2. Myeclipse java程序中运行图片无法加载并且乱码
  3. SQL常用代码段
  4. 从分布式一致性谈到CAP理论、BASE理论
  5. Visual Studio 2015速递(2)——提升效率和质量(VS2015核心竞争力)
  6. 大四找实习(web前端),加油
  7. hiho 1182 : 欧拉路&#183;三
  8. 理解Java的引用对象
  9. 问题-[Delphi]用LoadLibrary加载DLL时返回0的错误
  10. 【原创】leetCodeOj --- Word Ladder II 解题报告 (迄今为止最痛苦的一道题)
  11. javascript操作写入txt文件及消息: Automation 服务器不能创建对象问题
  12. JavaScript DOM编程艺术-学习笔记(总结一)
  13. stm32 Bootloader设计(YModem协议) (转)
  14. Linux 进程,线程 -- (未完)
  15. 事后诸葛亮分析(Beta阶段)
  16. DRAM的原理设计
  17. 配置GitHub的SSH key
  18. Test Design Techniques - STATE BASED TESTING
  19. postgresql和redis
  20. Codeforces Round #373 (Div. 2) E. Sasha and Array 线段树维护矩阵

热门文章

  1. 我的名字叫hadoop
  2. json传值给前端页面,出现堆栈溢出问题
  3. 树莓派编译程序时报错:virtual memory exhausted: Cannot allocate memory
  4. Git安装配置(Linux)
  5. linux之sed基础命令详解
  6. 20145234黄斐《信息安全系统设计基础》第八周(Linux下vim相关命令)
  7. 二进制描述子 BRIEF(ORB), BRISK, FREAK
  8. nginx下pagespeed使用详解
  9. Spark性能优化--数据倾斜调优与shuffle调优
  10. mac使用brew或者tomcat启动jenkins后配置文件路径