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

数据结构与算法之字符串

时间:2019-09-01 14:43:24      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:bsp   实现   lan   解题思路   blank   替换空格   char   strong   输出   

字符串是有若干字符组成的序列,C/C++中每个字符串都以‘\0‘作为结尾,这样就很容易找到字符串的最后尾部,但是需要一个额外字符的开销,容易造成字符串的越界。

常量字符串是在一块单独的只读的内存区域,其内容不可更改;

 

1 替换空格(剑指offer---面试题4)

题目:请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“We are happy.”,则输出“We%20are%20apy.”。

  • void ReplaceBlank(char string[], int length);

解题思路:

(1)遍历字符串,统计出空格的总数numberOfBank;

(2)计算出替换之后的字符串长度,即newLength = originLength + 2 * numberOfBank;

(3)两个指针P1和P2分别指向原始的字符串的末尾和替换后的字符串的末尾,并且从后前遍历依次copy;

2 未完待续~

数据结构与算法之字符串

标签:bsp   实现   lan   解题思路   blank   替换空格   char   strong   输出   

原文地址:https://www.cnblogs.com/bo1990/p/11441983.html

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