《程序员面试金典》原串翻转
2015-09-16 15:28
316 查看
【 声明:版权所有,转载请标明出处,请勿用于商业用途。 联系信箱:libin493073668@sina.com】
题目链接:http://www.nowcoder.com/practice/2442435405fa432b99b8ec1cb0315902?rp=1&ru=/ta/cracking-the-coding-interview&qru=/ta/cracking-the-coding-interview/question-ranking
题目描述
请实现一个算法,在不使用额外数据结构和储存空间的情况下,翻转一个给定的字符串(可以使用单个过程变量)。
给定一个string iniString,请返回一个string,为翻转后的字符串。保证字符串的长度小于等于5000。
测试样例:
"This is nowcoder"
返回:"redocwon si sihT"
思路
应该不少同学也做过这种类型的题了,翻转字符就是折半交换,应该不需要解释什么了
class Reverse
{
public:
string reverseString(string iniString)
{
// write code here
if(iniString=="")
return iniString;
int length = iniString.length();
revese(iniString,0,length-1);
return iniString;
}
void revese(string &str,int start,int end)
{
while(start<end)
{
swap(str[start],str[end]);
start++;
end--;
}
}
};
相关文章推荐
- 百度大数据实习生电话面试总结
- 《程序员面试金典》确定字符互异
- 《程序员面试金典》基本字符串压缩
- .net 初中级程序员招聘
- 《程序员面试金典》空格替换
- 程序员:你的代码为谁而写
- 面试专用:JSP的九大内置对象和四大作用域
- 【面试季二】前端性能优化
- 《黑马程序员》Java面向对象
- 中兴面试2016 软件开发
- 《招聘一个靠谱的iOS》面试题参考答案
- 程序员面试、算法研究、编程艺术、红黑树、数据挖掘5大系列集锦
- 游戏面试题:struct与class的区别
- 高效程序员的45个习惯
- 面试题_HashTable和HashMap的区别
- sql面试题详解
- 《黑马程序员》Java多线程
- 程序员平时该问问自己的10个问题
- 我是程序员,加班就是我活该吗?
- 19岁程序员在谷歌学到的5条经验教训