数据结构与算法之字符串
Posted bo1990
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构与算法之字符串相关的知识,希望对你有一定的参考价值。
字符串是有若干字符组成的序列,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 未完待续~
以上是关于数据结构与算法之字符串的主要内容,如果未能解决你的问题,请参考以下文章
数据结构与算法之深入解析“重复叠加字符串匹配”的求解思路与算法示例