KamaCoder刷题 由浅入深之字符串——54. 替换数字

目录

(一)替换数字的C++实现

写法一(字符串遍历)

(二)复杂度分析

时间复杂度

空间复杂度

(三)总结


【题目链接】54. 替换数字 - 卡码网(KamaCoder)

题目描述

给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number。 例如,对于输入字符串 "a1b2c3",函数应该将其转换为 "anumberbnumbercnumber"。

输入描述

输入一个字符串 s,s 仅包含小写字母和数字字符。

输出描述

打印一个新的字符串,其中每个数字字符都被替换为了number

输入示例

a1b2c3

输出示例

anumberbnumbercnumber

提示信息

数据范围:
1 <= s.length < 10000。

(一)替换数字的C++实现

写法一(字符串遍历)

解题思路:

        循环遍历+判断,直接定义一个结果字符串,按条件写进去(加法拼接)就是最终结果。

#include
#include
using namespace std;
 
int main(){
    string s;
    string s2;
    cin>>s;
    for(auto i : s){
        if(i >= '0' && i <= '9')
            s2 += "number";
        else
            s2 += i; //字符串可以用加号实现拼接
    }
    cout<

(二)复杂度分析

时间复杂度

O(n)  循环遍历字符串

空间复杂度

O(n)额外字符串s2存储

(三)总结

(1)非常简单,关键在于字符串的加号拼接,以及完整的C++文件的书写。

(2)#include //字符串的头文件。

(3)int main()要return 0。

学习中,诚挚希望有心者指正和交流,经验或者方法都可。

你可能感兴趣的:(leetcode刷题,由浅入深,算法,数据结构,leetcode,c++,字符串)