代码随想录算法训练营第8天|字符串Part01
记录题目:
- 反转字符串 II
- 替换数字
给定一个字符串
s
和一个整数k
,从字符串开头算起,每计数至2k
个字符,就反转这2k
字符中的前k
个字符。
- 如果剩余字符少于
k
个,则将剩余字符全部反转。- 如果剩余字符小于
2k
但大于或等于k
个,则反转前k
个字符,其余字符保持原样。
1 | var reverseStr = function(s, k) { |
题目描述 给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为 number。 例如,对于输入字符串 “a1b2c3”,函数应该将其转换为 “anumberbnumbercnumber”。
输入描述 输入一个字符串 s,s 仅包含小写字母和数字字符。
输出描述 打印一个新的字符串,其中每个数字字符都被替换为了 number。
很多数组填充类的问题,其做法都是先预先给数组扩容带填充后的大小,然后再从后向前进行操作。
优点:
- 不用申请新数组。
- 从后向前填充元素,避免了从前向后填充元素时, 每次添加元素都要将添加元素之后的所有元素向后移动的问题。