《剑指offer》刷题笔记(知识迁移能力):翻转单词顺序列
来源:互联网 发布:时间加权平均价格算法 编辑:程序博客网 时间:2024/06/06 03:12
《剑指offer》刷题笔记(知识迁移能力):翻转单词顺序列
- 转载请注明作者和出处:http://blog.csdn.net/u011475210
- 代码地址:https://github.com/WordZzzz/Note/tree/master/AtOffer
- 刷题平台:https://www.nowcoder.com/
- 题 库:剑指offer
- 编 者:WordZzzz
- 剑指offer刷题笔记知识迁移能力翻转单词顺序列
- 题目描述
- 解题思路
- C版代码实现
题目描述
牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
解题思路
思路很简单,先将每个单词反转,再将所有字符串一起反转。我们这里写个函数封装一下反转的过程,同时用追加空格字符的方式来减少判断条件。
C++版代码实现
class Solution {public: string ReverseSentence(string str) { auto length = str.size(); if(length == 0) return ""; str += ' '; int mark = 0; for(int i = 0; i < length + 1; ++i){ if(str[i] == ' '){ reverseWord(str, mark, i-1); mark = i + 1; } } str = str.substr(0, length); reverseWord(str, 0, length-1); return str; } void reverseWord(string &str, int begin, int end){ while(end > begin) swap(str[begin++],str[end--]); }};
系列教程持续发布中,欢迎订阅、关注、收藏、评论、点赞哦~~( ̄▽ ̄~)~
完的汪(∪。∪)。。。zzz
阅读全文
0 0
- 《剑指offer》刷题笔记(知识迁移能力):翻转单词顺序列
- 剑指offer 42题 【知识迁移能力】翻转单词顺序列
- 剑指offer 6.3 知识迁移能力7-反转单词顺序
- 【剑指offer】6.3知识迁移能力——面试题42:翻转单词顺序VS左旋转字符串
- 《剑指offer》翻转单词顺序列
- 剑指offer--翻转单词顺序列
- 剑指offer—翻转单词顺序列
- 剑指offer:翻转单词顺序列
- 剑指offer:翻转单词顺序列
- [剑指offer]翻转单词顺序列
- 剑指Offer--042-翻转单词顺序列
- 剑指offer题解 翻转单词顺序列
- 剑指offer|翻转单词顺序列
- 《剑指offer》-翻转单词顺序列
- 剑指offer 翻转单词顺序列
- 剑指offer-44.翻转单词顺序列
- 【剑指offer】翻转单词顺序列
- 《剑指offer》翻转单词顺序列
- 索引顺序表查找算法(分块查找)
- 微信小程序 image标签下面多一段距离
- React
- 织梦DEDECMS系统中自定义变量的修改方法
- 2017 Google 开发者大会
- 《剑指offer》刷题笔记(知识迁移能力):翻转单词顺序列
- mongoTemplate 一些简单记录
- Eclipse搭建Maven环境
- 实现虚拟机VMware上linux与windows互相复制与粘贴
- @Autowired注入request为null解决方法
- [地图可视化]Grasshopper Geography技术色线突出了全世界淡水支流的广阔范围
- 常用的图片加载库的区别(Gilde,Picasso,Image-loader,Fresco)
- gulp——用自动化构建工具增强你的工作流程
- Faliure [INSTALL_FAILED_ALREADY_EXISTS] 解决办法 Android csdn