当前位置: 首页 > news >正文

LeetCode--剑指Offer75(1)

目录

  • 题目描述:剑指 Offer 05. 替换空格(简单)
    • 题目接口
    • 解题思路1
    • 代码
    • 解题思路2
    • 代码
  • PS:

题目描述:剑指 Offer 05. 替换空格(简单)

请实现一个函数,把字符串 s 中的每个空格替换成"%20"。

LeetCode做题链接:LeetCode-剑指 Offer 05. 替换空格

示例 1:

输入:s = "We are happy."
输出:"We%20are%20happy."

限制: 0 <= s 的长度 <= 10000

题目接口

class Solution {public String replaceSpace(String s) {}
}

解题思路1

初始化一个 StringBuilder ,记为 sb
遍历列表 s 中的每个字符 c
c 为空格时:向 sb 后添加字符串 “%20” ;
c 不为空格时:向 sb后添加字符 c
将列表 sb 转化为字符串并返回。

代码

class Solution {public String replaceSpace(String s) {StringBuilder sb = new StringBuilder();int len = s.length();for (int i = 0; i < len; i++) {char c = s.charAt(i);if (c == ' ') {sb.append("%20");} else {sb.append(c);}}return sb.toString();}
}

成功!
在这里插入图片描述

解题思路2

String内置方法:replaceAll
用给定的替换替换与给定正则表达式匹配的此字符串的每个子字符串。
以str形式调用此方法 .replaceAll (正则表达式, repl) 产生与表达式完全相同的结果

代码

class Solution {public String replaceSpace(String s) {return s.replaceAll(" ","%20");}
}

成功!在这里插入图片描述
这个方法的耗时会高一些,里面会使用正则表达式去匹配空格再替换~

PS:

感谢您的阅读!如果您觉得本篇文章对您有所帮助,请给予博主一个喔~

http://www.lryc.cn/news/107500.html

相关文章:

  • C++ 关于大端模式和小端模式的简析
  • 嵌入式:C高级 Day2
  • iPhone 7透明屏的显示效果怎么样?
  • 【C++】—— 多态常见的笔试和面试问题
  • 探寻AI大模型平台之巅——文心千帆
  • 【springboot】RestTemplate配置HttpClient连接池
  • MySQL内置函数使用说明
  • java后端富文本转word,再传递到浏览器下载。
  • 【动态规划算法】-回文串问题题型(34-40题)
  • STM32基础回顾
  • 如何解决电脑无声问题:排除故障的几种常见方法
  • Apache RocketMQ 命令注入
  • 二、搜索与图论6:Dijkstra 模板题+算法模板(Dijkstra求最短路 I, Dijkstra求最短路 II,1003 Emergency)
  • ROS2学习(四)进程,线程与节点的关系
  • 【物联网】DMA传输原理与实现详解(超详细)
  • Java类集框架(二)
  • 爬虫008_流程控制语句_if_if else_elif_for---python工作笔记026
  • 【随笔】五周年创作纪念日
  • 7_分类算法—逻辑回归
  • 【计算机网络】应用层协议 -- DNS协议
  • ES6 - 数组新增的一些常用方法
  • 【BEV感知】3-BEV开源数据集
  • Kafka-Broker工作流程
  • 第八篇-Tesla P40+ChatGLM2+LoRA
  • 调用feign返回错误的数据
  • 【Spring】(二)从零开始的 Spring 项目搭建与使用
  • redis五种数据类型介绍
  • 【JavaEE】Spring Boot - 项目的创建和使用
  • Git reset、revert用法
  • Redis-1