334 字符串反转

1、要求:只能在原数组上修改,不能新建空间

2、思路:我是分长度奇数和偶数判断的

3、代码实现

 1 class Solution {
 2 public:
 3     void reverseString(vector<char>& s) {
 4     if(!s.empty()){
 5         int n=s.size();
 6         if(n%2==0)
 7         {
 8             for(int i=0;i<=n/2-1;i++){//第二次改正的,注意要减去1
 9                  char chartemp;//第一次写的是int,明明是字符
10                  chartemp=s[i];
11                 s[i]=s[n-1-i];
12                 s[n-1-i]=chartemp;
13             }
14             return ;
15         }
16         else{
17             int mid=n/2;
18             for(int i=0;i<mid;i++){
19                 char chartemp;
20                  chartemp=s[i];
21                 s[i]=s[n-1-i];
22                 s[n-1-i]=chartemp;
23             }
24             return ;
25         }
26     }
27     }
28 };

4、结果

猜你喜欢

转载自www.cnblogs.com/hehesunshine/p/11577752.html