1859. 将句子排序

1859. 将句子排序

一个 句子 指的是一个序列的单词用单个空格连接起来,且开头和结尾没有任何空格。每个单词都只包含小写或大写英文字母。

我们可以给一个句子添加 从 1 开始的单词位置索引 ,并且将句子中所有单词 打乱顺序 。

比方说,句子 “This is a sentence” 可以被打乱顺序得到 “sentence4 a3 is2 This1” 或者 “is2 sentence4 This1 a3” 。
给你一个 打乱顺序 的句子 s ,它包含的单词不超过 9 个,请你重新构造并得到原本顺序的句子。

示例 1:输入:s = "is2 sentence4 This1 a3"
输出:"This is a sentence"
解释:将 s 中的单词按照初始位置排序,得到 "This1 is2 a3 sentence4" ,然后删除数字。
示例 2:输入:s = "Myself2 Me1 I4 and3"
输出:"Me Myself and I"
解释:将 s 中的单词按照初始位置排序,得到 "Me1 Myself2 and3 I4" ,然后删除数字。

提示:

  • 2 <= s.length <= 200
  • s 只包含小写和大写英文字母、空格以及从 1 到 9 的数字。
  • s 中单词数目为 1 到 9 个。
  • s 中的单词由单个空格分隔。
  • s 不包含任何前导或者后缀空格。

解题思路

  1. 首先我们需要将被打乱顺序的所有单词分离出来,所以先需要使用空格来划分字符串,如果对于每一个被打乱顺序的单词,末尾都存在一个序号的标记,因此我们使用map,完成序号跟字符串的匹配关系
  2. 因为字符串它包含的单词不超过 9 个,因此序号最多只能为9,因此我们只需要按需要将字符串拼接起来就可以了。

代码

class Solution {
public:string sortSentence(string s) {map<int,string> m;for (int i = 0; i < s.size(); ++i) {if (s[i]!=' '){int start=i;while (i < s.size()&&s[i]!=' '){i++;}m[s[i-1]-'0']=s.substr(start,i-start-1);}}string res("");for (int i = 1; i <= 9; ++i) {if (m.count(i))res.append(m[i]+" ");else break;}return res.substr(0,res.size()-1);}
};

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

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

相关文章

医动力Android基于CC组件化框架的探索与实践

为什么要组件化? 医动力App作为公司的核心产品已经有多年历史了,随着版本的不断迭代,功能越来越多,代码量越来越大,不可避免的会产生一下问题: 业务越来越复杂&#xff0c;维护成本高;业务耦合度高&#xff0c;代码越来越臃肿&#xff0c;团队内部多人协作开发困难;编译时间长…

使用协同过滤推荐电影

ALSO, ARE RECOMMENDER SYSTEMS INFLUENCING OUR TASTE??此外&#xff0c;推荐系统是否影响我们的口味&#xff1f; An excerpt on creating a movie recommender system similar to the OTT platforms.有关创建类似于OTT平台的电影推荐系统的摘录。 INTRODUCTION介绍 For…

423. 从英文中重建数字

423. 从英文中重建数字 给你一个字符串 s &#xff0c;其中包含字母顺序打乱的用英文单词表示的若干数字&#xff08;0-9&#xff09;。按 升序 返回原始的数字。 例 1&#xff1a;输入&#xff1a;s "owoztneoer" 输出&#xff1a;"012"示例 2&#xf…

锦欣生殖获战略投资,华平、信银领投,红杉、药明康德跟投

9月16日消息&#xff0c;锦欣生殖近日宣布已完成新一轮的战略投资&#xff0c;本轮融资由原战略股东华平投资及新引入的中信银行旗下信银投资领投&#xff0c;红杉资本中国基金、药明康德等跟投。完成本轮融资后&#xff0c;华平投资及信银投资分别成为锦欣生殖的第二及第三大股…

数据暑假实习面试_面试数据科学实习如何准备

数据暑假实习面试Unfortunately, on this occasion, your application was not successful, and we have appointed an applicant who…不幸的是&#xff0c;这一次&#xff0c;您的申请没有成功&#xff0c;我们已经任命了一位符合以下条件的申请人&#xff1a; Sounds famili…

两道简单的入门题

1&#xff09;  for循环求100以内奇数和 1 #include<stdio.h> 2 int main(){ 3 int ans0;//定义一个答案变量存储答案 4 for(int i1;i<100;i)//用for从1循环到100&#xff0c;如果i%2&#xff01;0&#xff08;%是一种取余运算&#xff09; 5 if(…

1716. 计算力扣银行的钱

1716. 计算力扣银行的钱 Hercy 想要为购买第一辆车存钱。他 每天 都往力扣银行里存钱。 最开始&#xff0c;他在周一的时候存入 1 块钱。从周二到周日&#xff0c;他每天都比前一天多存入 1 块钱。在接下来每一个周一&#xff0c;他都会比 前一个周一 多存入 1 块钱。 给你 …

谷歌 colab_如何在Google Colab上使用熊猫分析

谷歌 colabRecently, pandas have come up with an amazing open-source library called pandas-profiling. Generally, EDA starts by df.describe(), df.info() and etc which to be done separately. Pandas_profiling extends the general data frame report using a singl…

【题解】HAOI2007分割矩阵

水题盛宴啦啦啦……做起来真的极其舒服&#xff0c;比某些毒瘤题好太多了…… 数据范围极小 --> 状压 / 搜索 / 高维度dp&#xff1b;观察要求的均方差&#xff0c;开始考虑是不是能够换一下式子。我们用\(a_{x}\)来表示第 \(x\) 个矩阵的总值&#xff0c;则式子为&#xff…

Java之生成Pdf并对Pdf内容操作

虽说网上有很多可以在线导出Pdf或者word或者转成png等格式的工具&#xff0c;但是我觉得还是得了解知道是怎么实现的。一来&#xff0c;在线免费转换工具&#xff0c;是有容量限制的&#xff0c;达到一定的容量时&#xff0c;是不能成功导出的;二来&#xff0c;业务需求&#x…

边际概率条件概率_数据科学家解释的边际联合和条件概率

边际概率条件概率Probability plays a very important role in Data Science, as Data Scientist regularly attempt to draw statistical inferences that could be used to predict data or analyse data better.P robability起着数据科学非常重要的作用&#xff0c;为数据科…

1822. 数组元素积的符号

1822. 数组元素积的符号 已知函数 signFunc(x) 将会根据 x 的正负返回特定值&#xff1a; 如果 x 是正数&#xff0c;返回 1 。 如果 x 是负数&#xff0c;返回 -1 。 如果 x 是等于 0 &#xff0c;返回 0 。 给你一个整数数组 nums 。令 product 为数组 nums 中所有元素值的…

java并发编程实战:第十四章----构建自定义的同步工具

一、状态依赖性管理 对于单线程程序&#xff0c;某个条件为假&#xff0c;那么这个条件将永远无法成真在并发程序中&#xff0c;基于状态的条件可能会由于其他线程的操作而改变1 可阻塞的状态依赖操作的结构2 3 acquire lock on object state4 while (precondition does not ho…

关于之前的函数式编程

之前写的函数式编程是我从 JavaScript ES6 函数式编程入门经典这本书里面整理的&#xff0c;然后只在第一篇里专门提到了&#xff0c;后面的话没有专门提到&#xff0c;而且引用了书中大量的文字&#xff0c;所以我把掘金这里的文章都删除了&#xff0c;然后在 CSDN 上面每一篇…

袋装决策树_袋装树是每个数据科学家需要的机器学习算法

袋装决策树袋装树木介绍 (Introduction to Bagged Trees) Without diving into the specifics just yet, it’s important that you have some foundation understanding of decision trees.尚未深入研究细节&#xff0c;对决策树有一定基础了解就很重要。 From the evaluatio…

[JS 分析] 天_眼_查 字体文件

0. 参考 js分析 猫_眼_电_影 字体文件 font-face 1. 分析 1.1 定位目标元素 1.2 查看网页源代码 1.3 requests 请求提取得到大量错误信息 对比猫_眼_电_影抓取到unicode编码&#xff0c;天_眼_查混合使用正常字体和自定义字体&#xff0c;难点在于如何从 红 转化为 美。 一开始…

深入学习Redis(4):哨兵

前言在 深入学习Redis&#xff08;3&#xff09;&#xff1a;主从复制 中曾提到&#xff0c;Redis主从复制的作用有数据热备、负载均衡、故障恢复等&#xff1b;但主从复制存在的一个问题是故障恢复无法自动化。本文将要介绍的哨兵&#xff0c;它基于Redis主从复制&#xff0c;…

1805. 字符串中不同整数的数目

1805. 字符串中不同整数的数目 给你一个字符串 word &#xff0c;该字符串由数字和小写英文字母组成。 请你用空格替换每个不是数字的字符。例如&#xff0c;“a123bc34d8ef34” 将会变成 " 123 34 8 34" 。注意&#xff0c;剩下的这些整数为&#xff08;相邻彼此至…

经天测绘测量工具包_公共土地测量系统

经天测绘测量工具包部分-乡镇第一师 (Sections — First Divisions of Townships) The PLSS Townships are typically divided into 36 Sections (nominally one mile on a side), but in the national standard this feature is called the first division because Townships …

洛谷 P4012 深海机器人问题【费用流】

题目链接&#xff1a;https://www.luogu.org/problemnew/show/P4012 洛谷 P4012 深海机器人问题 输入输出样例 输入样例#1&#xff1a; 1 1 2 2 1 2 3 4 5 6 7 2 8 10 9 3 2 0 0 2 2 2 输出样例#1&#xff1a; 42 说明 题解&#xff1a;建图方法如下&#xff1a; 对于矩阵中的每…