程序员面试金典 - 面试题 01.03. URL化(字符串)

1. 题目

URL化。编写一种方法,将字符串中的空格全部替换为%20。假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的“真实”长度。(注:用Java实现的话,请使用字符数组实现,以便直接在数组上操作。)

示例1:输入:"Mr John Smith    ", 13输出:"Mr%20John%20Smith"示例2:输入:"               ", 5输出:"%20%20%20%20%20"提示:
字符串长度在[0, 500000]范围内。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/string-to-url-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

class Solution {
public:string replaceSpaces(string S, int length) {string ans;for(int i = 0; i < length; ++i){if(S[i] == ' ')ans += "%20";elseans += S[i];}return ans;}
};
  • 可以一次性申请string的所需空间,性能较好
class Solution {
public:string replaceSpaces(string S, int length) {int i, j, count = 0;for(i = 0; i < length; ++i){if(S[i] == ' ')count++;}int len = length-count+3*count;string ans(len,' ');for(i = 0, j = 0; i < length; ++i,++j){if(S[i] != ' ')ans[j] = S[i];else{ans[j++] = '%';ans[j++] = '2';ans[j]   = '0';}}return ans;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477233.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

扩散模型又杀疯了!这一次被攻占的领域是...

文 | Yimin_饭煲从2020年的初出茅庐&#xff0c;到2021年的日趋火热&#xff0c;再到2022年的大放异彩&#xff0c;扩散模型(Diffusion Models) 正在人工智能学术界和工业界获取越来越多的关注。如果还不是特别了解扩散模型的朋友&#xff0c;可以阅读卖萌屋的几篇历史推文《扩…

程序员面试金典 - 面试题 01.04. 回文排列(哈希map)

1. 题目 给定一个字符串&#xff0c;编写一个函数判定其是否为某个回文串的排列之一。 回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。 回文串不一定是字典当中的单词。 示例1&#xff1a; 输入&#xff1a;"tactcoa" 输出&#xff1a;tru…

Spring Boot中对log4j进行多环境不同日志级别的控制

之前介绍了在《Spring boot中使用log4j记录日志》&#xff0c;仅通过log4j.properties对日志级别进行控制&#xff0c;对于需要多环境部署的环境不是很方便&#xff0c;可能我们在开发环境大部分模块需要采用DEBUG级别&#xff0c;在测试环境可能需要小部分采用DEBUG级别&#…

耗时四年,我们写了一本1400页的AI全栈技术手册

不知不觉写文章已经四年了。最开始是一个人&#xff0c;后来恰了恰饭&#xff0c;就招揽了很多比小夕厉害的小伙伴一起写。不知不觉已经积累了300多篇了。。三年以来&#xff0c;我跟小伙伴们原创的300篇深度学习、NLP、CV、知识图谱、跨模态等领域的入门资料、子方向综述、201…

程序员面试金典 - 面试题 01.06. 字符串压缩(字符串)

1. 题目 字符串压缩。利用字符重复出现的次数&#xff0c;编写一种方法&#xff0c;实现基本的字符串压缩功能。比如&#xff0c;字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短&#xff0c;则返回原先的字符串。你可以假设字符串中只包含大小写英文字母&…

Spring Boot中使用@Async实现异步调用

什么是“异步调用”&#xff1f; “异步调用”对应的是“同步调用”&#xff0c;同步调用指程序按照定义顺序依次执行&#xff0c;每一行程序都必须等待上一行程序执行完成之后才能执行&#xff1b;异步调用指程序在顺序执行时&#xff0c;不等待异步调用的语句返回结果就执行…

谷歌HuggingFace| 零样本能力最强的语言模型结构

文 | iven从 GPT3 到 Prompt&#xff0c;越来越多人发现大模型在零样本学习&#xff08;zero-shot&#xff09;的设定下有非常好的表现。这都让大家对 AGI 的到来越来越期待。但有一件事让人非常疑惑&#xff1a;19 年 T5 通过“调参”发现&#xff0c;设计预训练模型时&#x…

程序员面试金典 - 面试题 01.07. 旋转矩阵(一次遍历+位运算)

1. 题目 给定一幅由N N矩阵表示的图像&#xff0c;其中每个像素的大小为4字节&#xff0c;编写一种方法&#xff0c;将图像旋转90度。 不占用额外内存空间能否做到&#xff1f; 示例 1: 给定 matrix [[1,2,3],[4,5,6],[7,8,9] ],原地旋转输入矩阵&#xff0c;使其变为: […

Spring Boot中使用@Scheduled创建定时任务

我们在编写Spring Boot应用中经常会遇到这样的场景&#xff0c;比如&#xff1a;我需要定时地发送一些短信、邮件之类的操作&#xff0c;也可能会定时地检查和监控一些标志、参数等。 创建定时任务 在Spring Boot中编写定时任务是非常简单的事&#xff0c;下面通过实例介绍如…

从二本到ICLR杰出论文奖,我用了20年

文 | 李梅编 | 陈彩娴源 | AI科技评论二本出身&#xff0c;读了两个硕士才在29岁开始读博&#xff0c;39岁才结束博士后研究的付杰形容&#xff0c;他的20年就像个体与系统的博弈&#xff1a;一些机器学习的文章中&#xff0c;研究者会根据训练初始阶段 Training Curve&#xf…

Spring Boot属性配置文件详解

相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能&#xff0c;还能实现快速开发的便捷。我们在Spring Boot使用过程中&#xff0c;最直观的感受就是没有了原来自己整合Spring应用时繁多的XML配置内容&#xff0c;替代它的是在pom.xml中引入模块化的Starter PO…

程序员面试金典 - 面试题 01.08. 零矩阵

1. 题目 编写一种算法&#xff0c;若M N矩阵中某个元素为0&#xff0c;则将其所在的行与列清零。 示例 1&#xff1a; 输入&#xff1a; [[1,1,1],[1,0,1],[1,1,1] ] 输出&#xff1a; [[1,0,1],[0,0,0],[1,0,1] ]示例 2&#xff1a; 输入&#xff1a; [[0,1,2,0],[3,4,5,2]…

AI帮写代码67元/月!

整理 | 彭慧中责编 | 屠敏出品 | CSDN如今&#xff0c;人工智能已经逐渐习惯充当人类生活中“副驾驶”位置上的角色。它帮助我们打扫卫生、撰写文稿、回复消息、路线导航....但在此之前&#xff0c;人工智能在改进代码方面还止步不前&#xff0c;以至于多少人还在为绞尽脑汁写代…

Spring Boot中Web应用的统一异常处理

我们在做Web应用的时候&#xff0c;请求处理过程中发生错误是非常常见的情况。Spring Boot提供了一个默认的映射&#xff1a;/error&#xff0c;当处理中抛出异常之后&#xff0c;会转到该请求中处理&#xff0c;并且该请求有一个全局的错误页面用来展示异常内容。 选择一个之…

统计学习及监督学习概论

文章目录1. 统计学习2. 统计学习分类2.1 基本分类2.1.1 监督学习 supervised learning2.1.2 无监督学习 unsupervised learning2.1.3 强化学习 reinforcement learning2.1.4 半监督学习 semi-supervised learning、主动学习 active learning2.2 按模型分类2.3 按算法分类2.4 按…

BERT为何无法彻底干掉BM25??

文 | QvQ近些年来&#xff0c;相比传统检索模型&#xff0c;大规模预训练式transformers结构的引入在各类任务上都有显著的提升。而这种提升在不同的数据集上有着特殊的模型设置&#xff0c;而当前依旧无法充分理解这些模型为什么以及如何可以更好的工作。古人云&#xff1a;知…

Spring Boot中使用MongoDB数据库

前段时间分享了关于Spring Boot中使用Redis的文章&#xff0c;除了Redis之后&#xff0c;我们在互联网产品中还经常会用到另外一款著名的NoSQL数据库MongoDB。 下面就来简单介绍一下MongoDB&#xff0c;并且通过一个例子来介绍Spring Boot中对MongoDB访问的配置和使用。 Mong…

程序员面试金典 - 面试题 01.09. 字符串轮转

1. 题目 字符串轮转。给定两个字符串s1和s2&#xff0c;请编写代码检查s2是否为s1旋转而成&#xff08;比如&#xff0c;waterbottle是erbottlewat旋转后的字符串&#xff09;。 示例1:输入&#xff1a;s1 "waterbottle", s2 "erbottlewat"输出&#x…

谷歌HuggingFace | 零样本能力最强的语言模型结构

从 GPT3 到 Prompt&#xff0c;越来越多人发现大模型在零样本学习&#xff08;zero-shot&#xff09;的设定下有非常好的表现。这都让大家对 AGI 的到来越来越期待。但有一件事让人非常疑惑&#xff1a;19 年 T5 通过“调参”发现&#xff0c;设计预训练模型时&#xff0c;Enco…

Spring Boot中使用Redis数据库

Spring Boot中除了对常用的关系型数据库提供了优秀的自动化支持之外&#xff0c;对于很多NoSQL数据库一样提供了自动化配置的支持&#xff0c;包括&#xff1a;Redis, MongoDB, Elasticsearch, Solr和Cassandra。 使用Redis Redis是一个开源的使用ANSI C语言编写、支持网络、…