1. 题目

「句子」是一个用空格分隔单词的字符串。给你一个满足下述格式的句子 text :

  • 句子的首字母大写
  • text 中的每个单词都用单个空格分隔。

请你重新排列 text 中的单词,使所有单词按其长度的升序排列。
如果两个单词的长度相同,则保留其在原句子中的相对顺序。

请同样按上述格式返回新的句子。

示例 1:
输入:text = "Leetcode is cool"
输出:"Is cool leetcode"
解释:句子中共有 3 个单词,长度为 8 的 "Leetcode" ,
长度为 2 的 "is" 以及长度为 4 的 "cool" 。
输出需要按单词的长度升序排列,新句子中的第一个单词首字母需要大写。示例 2:
输入:text = "Keep calm and code on"
输出:"On and keep calm code"
解释:输出的排序情况如下:
"On" 2 个字母。
"and" 3 个字母。
"keep" 4 个字母,因为存在长度相同的其他单词,
所以它们之间需要保留在原句子中的相对顺序。
"calm" 4 个字母。
"code" 4 个字母。示例 3:
输入:text = "To be or not to be"
输出:"To be or to be not"提示:
text 以大写字母开头,然后包含若干小写字母以及单词间的单个空格。
1 <= text.length <= 10^5

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

2. 解题

  • map<int,vector<string>> 存储 单词len,words
class Solution {public:string arrangeWords(string text) {text[0] += 32;//A 65, a 97,转小写map<int,vector<string>> m;//len,wordsistringstream in(text);string word, ans;while(in >> word)   {m[int(word.size())].push_back(word);}for(auto& mi : m)for(auto& w : mi.second)ans += w+" ";ans.pop_back();//末尾空格删除ans[0] -= 32;//首字符转大写return ans;}
};

80 ms 17 MB

LeetCode 1451. 重新排列句子中的单词(桶排序)相关推荐

  1. leetcode1451. 重新排列句子中的单词(排序)

    「句子」是一个用空格分隔单词的字符串.给你一个满足下述格式的句子 text : 句子的首字母大写 text 中的每个单词都用单个空格分隔. 请你重新排列 text 中的单词,使所有单词按其长度的升序排 ...

  2. python练习:重新排列句子中的单词

    def arrangeWords(text: str) -> str:text = text.lower() #将字符串转换为小写text = text.split(" ") ...

  3. java句子中找单词_java程序找到一个句子中每个单词的字母数

    我想找到一个句子中每个单词的字母数.我已经尝试了几次使用几个代码,但从来没有得到它.我总是显示错误StringIndexOutOfBounds异常.我的一个代码如下:java程序找到一个句子中每个单词 ...

  4. python for in语句 index_使用for循环查找句子中的单词及其索引位置

    我正在编写一个代码,提示用户输入一个句子,然后定义为str1,然后提示输入一个定义为str2的单词. 例如:Please enter a sentence: i like to code in pyt ...

  5. C语言反序输出英文句子,C++实现英文句子中的单词逆序输出的方法

    本文实例讲述了C++实现英文句子中的单词逆序输出的方法.分享给大家供大家参考,具体如下: #include "stdafx.h" #include #include #includ ...

  6. 李洋疯狂C语言之将”you are come from shanghai ”倒置为”shanghai from come are you”,将句子中的单词位置倒置,而不改变单词内部结构

    题目: 编写一个C函数,将"you are come from shanghai "倒置为"shanghai from come are you",及将句子中的 ...

  7. python编程试题单词倒排_Python:将句子中的单词全部倒排过来,但单词的字母顺序不变...

    早上看到好友未央的一篇博文<一道google的测试工程师笔试题>,内容如下: 这是去年面试google测试工程师的一道题,题目如下: 设计一个函数,使用任意语言,完成以下功能: 一个句子, ...

  8. 7-33 删除句子中的单词 (8 分)输入n(n<=10)个由若干个单词组成的英文句子(句子的长度不超过100),每个句子以英文的标点“.”结束,每个句子中单词之间由1个空格进行分隔,如果最后一个单

    7-33 删除句子中的单词 (8 分) 输入n(n<=10)个由若干个单词组成的英文句子(句子的长度不超过100),每个句子以英文的标点"."结束,每个句子中单词之间由1个空 ...

  9. python输入一个英文句子、统计单词个数_C语言编程求一个英文句子中的单词数和最长单词的位置、长度及输出这个单词。c++编程 从键盘输入一个英文...

    C语言编程求一个英文句子中的单词数和最长单词的位置.长度及输出这个单词. c++编程 从键盘输入一个英文 www.zhiqu.org     时间: 2020-11-23 我刚做了一关于英文句子里面每 ...

最新文章

  1. php 能打印一个没有实例化的类_你理解 PHP 中的静态方法吗?
  2. centos6.7 64位环境下部署MySQL-5.7.13
  3. python手机版iphone-Python编程狮下载
  4. 如何用栈实现浏览器的前进和后退?
  5. 最新汇总:一些基于深度学习的视觉里程计/SLAM开源代码
  6. 【问底】徐汉彬:PHP7和HHVM的性能之争
  7. MYSQL MVCC实现机制
  8. 反射机制,从为什么讲起,更容易接受
  9. echarts 地图增加背景图
  10. Ruby程序语言入门
  11. 博途PLC 1200/1500PID PID_Temp 加热制冷双输出+级联控制(串级控制)
  12. 文章中如何将章节分页——段前分页
  13. 侯捷 C++11/14 笔记
  14. django使用rest快速实现前后端分离登录注册
  15. Sketch基础学习
  16. HTML插入空格 HTML多个空格 HTML实体
  17. (入门级web应用)小书签收集站开发日志(一)--项目规划及最基本功能实现
  18. 08:go语言数字类型
  19. 最详细的ACL介绍与实验配置
  20. 目标检测之R-CNN

热门文章

  1. MapTask、ReduceTask并行度决定机制
  2. python 消息中间件_消息队列中间件 RabbitMQ 详细介绍——安装与基本应用(Python)...
  3. xwpftablecell设置字体样式_HTML的文字样式
  4. 驱动框架7——使用gpiolib完成led驱动
  5. linux 统计命令执行后的行数或者统计目录下文件数目
  6. BZOJ 2822: [AHOI2012]树屋阶梯 [Catalan数 高精度]
  7. 这就是搜索引擎--读书笔记五--索引的建立与更新
  8. 把Scala代码当作脚本运行
  9. 职业规划之后,还需要什么?职业规划与职业选择 - 续集
  10. 第五章 基元类型、引用类型、值类型 CLR学习第五课