JS数据结构与算法---- 替换字符串的空格

本文主要介绍如何在JavaScript中实现将字符串中的空格替换为%20的方法,涉及数据结构与算法的应用。
摘要由CSDN通过智能技术生成

cover from  Leetcode
转载自 力扣 剑指Offer 第五题

思路整理:

 大致方法: 双指针
 此想法来自于JS题解点赞量最高的大佬    膜拜大佬~
 
 首先我们要了解 英文的空格符 占了一个字符单位 
               中文的空格符 占了两个字符单位
 此题 为英文空格符
 题中 将空格替换成  '%20'占了三个字符单位
 本题运用双指针 
 需要比较原字符串长度 和  新占位字符串长度的关系
 空格 占 1单位  %20 占3单位  我们记录下原字符串 中空格的数量 得出关系
 newLength=oldLength+count*2
 我们得出了占位和原字符串长度 下面进行遍历
 s指针指向原字符串最后一项 跟 j指针指向占位字符串最后一项  比较
 s指针 指向不为空格的时候 j 指针 指向与s指针指向互换
 s指针为空格时 开始替换 %20 j指向位置 换成0  位置j-1 换成2 位置j-2 换成%
 最后将数组转换为字符串
var replaceSpace = function(s) {
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值