Solution1:我的答案

20181007重做

class Replacement {
public:string replaceSpace(string iniString, int length) {// write code hereint space_nums = 0;for (int i = 0; i < length; i++) {if (iniString[i] == ' ')space_nums++;}iniString += string(2*space_nums, ' ');int i = length + 2*space_nums - 1, j = length - 1;while (i != j) {if (iniString[j] == ' ') {iniString[i--] = '0';iniString[i--] = '2';iniString[i--] = '%';j--;} else {iniString[i--] = iniString[j--];}}return iniString;}
};

在原字符串上改

class Replacement {
public:string replaceSpace(string iniString, int length) {// write code hereif(length == 0) return iniString;int num_of_blank = 0;for(int i = 0; i < length; i++) {if(iniString[i] == ' ')num_of_blank++;}string temp(num_of_blank * 2, ' ');iniString.append(temp);int i = length - 1, j = length + num_of_blank * 2 - 1;while(i != j) {if(iniString[i] != ' ') {iniString[j--] = iniString[i];}else if(iniString[i] == ' ') {iniString[j--] = '0';iniString[j--] = '2';iniString[j--] = '%';}i--;}return iniString;}
};

Solution2:

参考网址:https://www.nowcoder.com/profile/7890003/codeBookDetail?submissionId=12718468
生成新的字符串,写法很简单啊~

class Replacement {
public:string replaceSpace(string iniString, int length) {// write code herestring str="";for(int i=0;i<length;i++){if(iniString[i]==' '){str+="%20";}elsestr+=iniString[i];}return str;}
};

【字符串替换】程序员面试金典——1.4空格替换相关推荐

  1. 程序员面试金典——18.10字符串变换

    程序员面试金典--18.10字符串变换 Solution1: 我的答案.穷举法,个人认为此题还是有点难度的... 利用了倒推法以及很高的时间复杂度才解决,并不值得推崇呀. class Change { ...

  2. 空格替换 牛客网 程序员面试金典 C++ Python

    空格替换 牛客网 程序员面试金典 C++ Python 题目描述 请编写一个方法,将字符串中的空格全部替换为"%20".假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实 ...

  3. 程序员面试金典——18.7最长合成字符串

    程序员面试金典--18.7最长合成字符串 参考网址:https://www.nowcoder.com/profile/2896594/codeBookDetail?submissionId=13543 ...

  4. 程序员面试金典——11.5找出字符串

    程序员面试金典--11.5找出字符串 Solution1:我的答案.加强版的二分查找,嘿嘿嘿 class Finder { public:int findString(vector<string ...

  5. 字符串压缩 牛客网 程序员面试金典 C++ Python

    字符串压缩 牛客网 程序员面试金典 C++ Python 题目描述 利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能.比如,字符串"aabcccccaaa"经压缩会变 ...

  6. 程序员面试金典面试题 01.06. 字符串压缩

    前言 本系列文章为<程序员面试金典>刷题笔记. 题目位置:字符串压缩 题集:程序员面试金典 题目 字符串压缩.利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能.比如,字符串a ...

  7. 程序员面试金典(第 6 版)(简单篇)

    程序员面试金典 第6版 简单篇 简单篇 面试题 01.01. 判定字符是否唯一 面试题 01.02. 判定是否互为字符重排 面试题 01.03. URL化 面试题 01.04. 回文排列 面试题 01 ...

  8. C#LeetCode刷题-程序员面试金典

    本文由 比特飞 原创发布,欢迎大家踊跃转载. 转载请注明本文地址:C#LeetCode刷题-程序员面试金典 | .Net中文网. C#LEETCODE刷题概述 概述 所有LeetCode程序员面试金典 ...

  9. 《程序员面试金典》+《算法导论》

    <程序员面试金典>+<算法导论> 因为最近可能会面临一波面试,但是自己各种算法以及常见的问题的熟悉程度感觉还不够,但是由前几次的代码优化经验来看,算法优化可以说是代码优化的重中 ...

最新文章

  1. javascript变量声明 及作用域
  2. reposurgeon 2.15 发布
  3. python服务器稳定性,一种基于Python服务器稳定性测试的方法技术
  4. Java中IO和NIO的本质和区别
  5. [MyBatisPlus]乐观锁和悲观锁
  6. 在Gradle 2.13中更好地处理“在插件Y上找不到属性X”
  7. 未越狱设备提取数据_从三星设备中提取健康数据
  8. 【Breadth-first Search 】专题3
  9. C#多线程之旅(1)——介绍和基本概念
  10. asp.net在ie7中使用FileUpload上传前预览图片
  11. <HTML>简单登录页面代码
  12. BP神经网络原理分析及c++代码实现(上)
  13. [深度数据]·深度学习数据集大全
  14. iframe允许嵌入的视频全屏播放
  15. 转载 戴仁光:给专职站长的网络创业建议
  16. “5杯水,怎么分给6个领导?” 答案暴露认知层次...
  17. view-ui中select全选实现
  18. 杭电acm a+b问题
  19. 阿里品牌数据银行分析师认证
  20. 当区块链是数字经济和数字社会的基石时,我们如何发现机遇?

热门文章

  1. C++ Primer Plus学习(一)—— 基础知识
  2. ubuntu使用VNC实现远程桌面
  3. 淮阴工学院计算机系在哪个校区,2021年淮阴工学院有几个校区,大一新生在哪个校区...
  4. (3)通过输入参数(测量数据)构建三维体模型(02)
  5. ubuntu 安装php gd,如何在ubuntu上安装php5-gd?
  6. matlab提示用户输入参数,调用函数显示输入参数不足
  7. 学计算机的会excel,超级容易学电脑--Excel电子表格
  8. ios 旋转屏幕试图切换_总结iOS App开发中控制屏幕旋转的几种方式
  9. swiftui动画之tab自定义切换动画_Unity动画系统详解1:在Unity中如何制作动画?
  10. python中tab键_python中tab键是什么意思