[面试必看之剑指offer打卡第二天]2替换空格

今天开始讲和大家坚持打卡面试非常重要算法练习—剑指offer,希望我们能一起肝。

代码收录github:https://github.com/MikeCreken/LinuxGuide

1 题目描述

请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

2 思路

  • 遍历字符串,统计空格个数,并计算加入"02%"后的总长度。
  • 申请两个指针p1,p2,p1指向原始字符的末尾小标,p2指向字符串末尾下标。
  • 如果p1非空,则将对应元素移动到当前p2所指向的位置中
  • 如果p1空,则将"02%"放入其中。

3 如下图

4 动画演示

5 代码实现

c++版本

c++

java版本

java版本

python版本

python版本

5 唠嗑

2020年6月24日打卡,打卡格式"打卡XX天"。暖蓝汇聚大家一起,探讨简历修改,面试经历分享,尽全力让大家能在2020找到理想的工作。如果你想加入,加我拉你进面试交流群。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章