码迷,mamicode.com
首页 > 其他好文 > 详细

反转字符串

时间:2019-09-03 00:12:57      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:cst   iostream   笔试   name   string   abc   ring   class   dea   

在线笔试上  要自己解决输入问题 没有练习过真的很操蛋

第一遍很不顺利 记录一下

 1 #include<iostream>
 2 #include<string>
 3 #include<cstring>
 4 using namespace std;
 5 
 6 void reverse(char* str, int start,int end){
 7     char temp = 0;
 8     while(start < end){
 9         temp = str[start];
10         str[start] = str[end];
11         str[end] = temp;
12         start++;
13         end--;
14     }
15 }
16 
17 int main()
18 {
19 
20     char str[10000];
21     memset(str,\0,10000);
22     cin.getline(str,10000);   //注意读入的字符串中有空格 因此用getline
23      int len = strlen(str);
24     reverse(str,0,len-1);
25    
26     int l = -1;
27     int r = -1;
28     for(int i = 0;i<len;i++){
29         if(str[i] !=  ){
30             l = i == 0 || str[i-1] ==   ? i : l;    //双等号 我傻逼了
31             r = i == len-1 || str[i+1] ==   ? i : r;
32         }
33         if(l != -1 && r != -1){
34             reverse(str,l,r);
35             l = -1;
36             r = -1;
37         }
38     }
39     cout<<str<<endl;
40     
41     return 0;
42 }

 

补充: 对于一个字符串  ABCDE  给出一个size=3  ------------> DEABC   先对[0,size-1]翻转   再对[size,len-1]翻转  最后整体翻转

 

反转字符串

标签:cst   iostream   笔试   name   string   abc   ring   class   dea   

原文地址:https://www.cnblogs.com/znshao/p/11450038.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!