码迷,mamicode.com
首页 > 编程语言 > 详细

字符串内子字符串的逆序算法

时间:2017-08-24 20:12:43      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:color   实现   简单   逆序输出   acm   class   strtok   bsp   多个   

  源于一道ACM的题目,要求将字符串中的子字符串逆序输出,最初的想法就是利用strtok按照空格进行分割字符,再实现以下单个字符串的逆序,再通过strcat进行字符串的拼接,感觉这个想法不错,利用库函数搞搞,但是不知道哪里出错,strcat出来的字符串输出的时候会出现多个换行,非常难受,感觉一个简单的问题,代码太多,所以睡觉的时候就在想,我应该考虑自己写一个算法来实现这个需求,刚好最近在看算法方面的书,那就尝试下吧。

   基本思想,从前往后扫描字符串,遇到空格停止,字符串第一个字符start位置,扫描到空格为end位置,将start——end-1中的字符串进行逆序,然后end位置填上空格,更新start = end + 1指向下一个字符串的起始字符,end更新到空格结束的位置,over!

核心代码如下:


 

 1 start = 0, end = 0;
 2 for(i = 0; i < len; i++)
 3 {
 4     end = i;
 5     if(src[end] ==   || src[end] == \n)
 6     {
 7         for(j = start; j < end; j++)
 8         {
 9             dest[k][j] = src[end - 1 - j + start];
10         }
11         if(src[end] ==  )
12         {
13             dest[k][j] =  ;
14         }
15         start = end + 1;
16     }
17 }

 

字符串内子字符串的逆序算法

标签:color   实现   简单   逆序输出   acm   class   strtok   bsp   多个   

原文地址:http://www.cnblogs.com/chuanlin/p/7424288.html

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