替换空格

简介: 替换空格

前言

学习记录,自用。可能存在问题。

描述

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

代码

#include <cstring>
class Solution {
  public:
    void replaceSpace(char* str, int length) {
       string res ,s = str;
     for(char c :s){
    if(c==' ')
      res += "%20";
    else
      res += c;
    }
    strcpy(str, res.c_str());
    }
};

思路

构造一个中间临时string res,将char * str转换成 string s 后遍历s类型数遇到空格就替换成“%20”,其他依次添加。

难点

  • char* 与string之间的转换关系;
  • char*数据类型的复制函数strcpoy();
  • string类型的使用方法;

总结

简单,但是使用auto会加大计算时间,所以在知道变量类型时尽可能直接写变量类型不要用auto


相关文章
|
机器学习/深度学习 测试技术
【深度优先搜索】【树】【有向图】【推荐】685. 冗余连接 II
【深度优先搜索】【树】【有向图】【推荐】685. 冗余连接 II
|
算法 Java 编译器
【C++ 关键字 virtual 】C++ virtual 关键字(将成员函数声明为虚函数实现多态
【C++ 关键字 virtual 】C++ virtual 关键字(将成员函数声明为虚函数实现多态
229 0
|
索引 Python
【Leetcode刷题Python】从列表list中创建一颗二叉树
本文介绍了如何使用Python递归函数从列表中创建二叉树,其中每个节点的左右子节点索引分别是当前节点索引的2倍加1和2倍加2。
250 7
|
10月前
|
人工智能
通义灵码AI编程
首次使用通义灵码AI编程助手,体验了其生成首页、用户界面、内容界面及内容发布界面的功能,整体运行良好,但仍存在一些小问题需解决。
|
Go
Go 配置管理库 Viper 怎么读取结构体嵌套的配置信息?
Go 配置管理库 Viper 怎么读取结构体嵌套的配置信息?
254 0
|
算法 测试技术 C#
【哈希映射】【 哈希集合】 381. O(1) 时间插入、删除和获取随机元素 - 允许重复
【哈希映射】【 哈希集合】 381. O(1) 时间插入、删除和获取随机元素 - 允许重复
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch并行与分布式(三)DataParallel原理、源码解析、举例实战
PyTorch并行与分布式(三)DataParallel原理、源码解析、举例实战
1223 0
|
缓存 并行计算 算法
【CUDA学习笔记】第四篇:线程以及线程同步(附案例代码下载方式)(二)
【CUDA学习笔记】第四篇:线程以及线程同步(附案例代码下载方式)(二)
606 0
|
安全 物联网 API
iOS开源库总结
iOS开源库总结
168 0
|
开发框架 JSON 前端开发
【老板要我啥都会】前端升全栈系列 使用Koa2重构项目
介绍一下 async/await ,回到之前的 promise-test ,其实它就是 promise 的语法糖,我们新建一个 readFileData 函数, await 后面跟着一个 promise 对象就可以拿到里面的 resolve 的内容 了。
【老板要我啥都会】前端升全栈系列 使用Koa2重构项目