赞
踩
题目描述
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。
基本思路
用C++来编写,效率高到飞起。让两个迭代器一个从第一个元素开始走,一个从最后一个元素开始走,循环,不停地交换即可。
踩过的坑
函数代码
class Solution { public: void reverseString(vector<char>& s) { if(s.empty()) { return; } auto it1=s.begin(); auto it2=s.end()-1; while(it1<it2) { swap(*it1,*it2); ++it1; --it2; } } };
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。