LeetCode 186. 翻转字符串里的单词 II

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

给定一个字符串,逐个翻转字符串中的每个单词。

示例:
输入: ["t","h","e"," ","s","k","y"," ","i","s"," ","b","l","u","e"]
输出: ["b","l","u","e"," ","i","s"," ","s","k","y"," ","t","h","e"]注意:
单词的定义是不包含空格的一系列字符
输入字符串中不会包含前置或尾随的空格
单词与单词之间永远是以单个空格隔开的进阶:使用 O(1) 额外空间复杂度的原地解法。

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

2. 解题

  • 先整体反转一遍
  • 然后找到每个单词,逐个单词反转
  • 原地,O(1) 空间复杂度
class Solution {
public:void reverseWords(vector<char>& s) {reverse(s, 0, s.size()-1);int l = 0, r;while(r < s.size()){while(r < s.size() && s[r]!=' ')//没遇见分隔符r++;reverse(s, l, r-1);r++;//跳过空格l = r;}}void reverse(vector<char>& s, int l, int r){while(l < r)swap(s[l++],s[r--]);}
};

64 ms 17.3 MB


长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

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

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

相关文章

java自动的废料收集_Java 垃圾收集机制

对象引用Java 中的垃圾回收一般是在 Java 堆中进行&#xff0c;因为堆中几乎存放了 Java 中所有的对象实例。谈到 Java 堆中的垃圾回收&#xff0c;自然要谈到引用。在 JDK1.2 之前&#xff0c;Java 中的引用定义很很纯粹&#xff1a;如果 reference 类型的数据中存储的数值代表…

LeetCode 1198. 找出所有行中最小公共元素(二分/合并有序链表)

文章目录1. 题目2. 解题2.1 按列遍历2.2 二分查找2.3 合并k个有序链表1. 题目 给你一个矩阵 mat&#xff0c;其中每一行的元素都已经按 递增 顺序排好了。 请你帮忙找出在所有这些行中 最小的公共元素。 如果矩阵中没有这样的公共元素&#xff0c;就请返回 -1。 示例&#x…

Java参数传递笔记

java值传递与引用传递 1、对象是按引用传递的---带""号的赋值操作 2、Java 应用程序有且仅有的一种参数传递机制&#xff0c;即按值传递---由"函数调用"引起的 3、按值传递意味着当将一个参数传递给一个函数时&#xff0c;函数接收的是原始值的一个副本 4、…

java 分布式系统 面试_分布式系统的面试题9

1、面试题分布式服务接口请求的顺序性如何保证&#xff1f;2、面试官心里分析其实分布式系统接口的调用顺序&#xff0c;也是个问题&#xff0c;一般来说是不用保证顺序的。但是有的时候可能确实是需要严格的顺序保证。给大家举个例子&#xff0c;你服务A调用服务B&#xff0c;…

Windows phone 应用开发[14]-调用WebBrowser

很久没有更新博客了.最近一直陷身在项目中难以有时间抽身梳理总结.关于博客确实很多想写的主题.节前大概草草 的梳理一下大概就有十几个主题.只能趁着放假的时间来逐渐把这批文章力所能及系统的更新出来. 主要涉及到我们团队现在Windows phone 项目开发中实际碰到一些问题和对应…

LeetCode 369. 给单链表加一(递归)

文章目录1. 题目2. 解题1. 题目 用一个 非空 单链表来表示一个非负整数&#xff0c;然后将这个整数加一。 你可以假设这个整数除了 0 本身&#xff0c;没有任何前导的 0。 这个整数的各个数位按照 高位在链表头部、低位在链表尾部 的顺序排列。 示例: 输入: [1,2,3] 输出: …

java弹窗点击事件_[Java教程]jQuery的click事件在当前页弹出层窗口(不打开新页面)...

[Java教程]jQuery的click事件在当前页弹出层窗口(不打开新页面)0 2015-10-24 15:00:04当给链接添加一个click事件&#xff0c;我们可能不希望Web浏览器按照其常规模式退出当前页面并通过新页面载入链接的目的地&#xff0c;而是在当前页弹出层窗口(不打开新页面)。例如&#xf…

LeetCode 1430. 判断给定的序列是否是二叉树从根到叶的路径(递归)

文章目录1. 题目2. 解题1. 题目 给定一个二叉树&#xff0c;我们称从根节点到任意叶节点的任意路径中的节点值所构成的序列为该二叉树的一个 “有效序列” 。 检查一个给定的序列是否是给定二叉树的一个 “有效序列” 。 我们以整数数组 arr 的形式给出这个序列。 从根节点到…

工作笔记-SDRAM的读写

用Quartus II的MegaFunction中的FIFO时&#xff0c;通常会用到wrusedw或rdusedw这两个信号&#xff0c;前者标志当前FIFO已经被使用了多少Word&#xff0c;后者表示当前FIFO还有多少Word可供读取。需要注意的是&#xff0c;若在二者已经达到了最大值时继续进行相应的读写操作&a…

jre6-java运行环境_Java运行环境(JRE8)64位 1.8.0.25

Java 是一个通用术语&#xff0c;用于表示 Java 软件及其组件&#xff0c;包括“Java 运行时环境 (JRE)”和“Java 虚拟机 (JVM)”。相信很多用户都用过JAVA程序,它的应用不只是在手机,各种平台都有其用武之地。在PC平台上运行Java程序时&#xff0c;有时候会提示你缺少Java环境…

LeetCode 362. 敲击计数器(map)

文章目录1. 题目2. 解题1. 题目 设计一个敲击计数器&#xff0c;使它可以统计在过去5分钟内被敲击次数。 每个函数会接收一个时间戳参数&#xff08;以秒为单位&#xff09;&#xff0c;你可以假设最早的时间戳从1开始&#xff0c;且都是按照时间顺序对系统进行调用&#xff…

a算法TSP旅行商java_A*算法实现旅行商问题(人工智能报告,付代码)

一、问题描述“旅行商问题”常被称为“旅行推销员问题”&#xff0c;是指一名推销员要拜访多个地点时&#xff0c;如何找到在拜访每个地点一次后再回到起点的最短路径。规则虽然简单&#xff0c;但在地点数目增多后求解却极为复杂。旅行商问题在本实验中的具体化&#xff1a;从…

windows phone 7 中文天气预报应用--来源http://www.cnblogs.com/liulunet/archive/2011/08/17/2141696.html...

windows phone 7 中文天气预报应用wp7的应用还是太少了&#xff0c;中文应用更少。虽然有天气预报应用但是自己感觉并不好用&#xff0c;感觉这样的程序应该很简单&#xff0c;于是萌生了自己写一个的想法。 印证了群里朋友说的一句话&#xff1a;程序员往往都是使用别人的程序…

LeetCode 666. 路径和 IV(树的遍历)

文章目录1. 题目2. 解题1. 题目 对于一棵深度小于 5 的树&#xff0c;可以用一组三位十进制整数来表示。 对于每个整数&#xff1a; 百位上的数字表示这个节点的深度 D&#xff0c;1 < D < 4。十位上的数字表示这个节点在当前层所在的位置 P&#xff0c; 1 < P <…

mysql delette_关于字符串:首字母大写MySQL

用mysql的说法&#xff0c;有人知道这个tsql的等价物吗&#xff1f;我正试图把每个条目的第一个字母大写。UPDATE tb_Company SET CompanyIndustry UPPER(LEFT(CompanyIndustry, 1)) SUBSTRING(CompanyIndustry, 2, LEN(CompanyIndustry))几乎是一样的&#xff0c;只需更改即可…

Prim最小生成树算法

在一个具有几个顶点的连通图G中&#xff0c;如果存在子图G包含G中所有顶点和一部分边&#xff0c;且不形成回路&#xff0c;则称G为图G的生成树&#xff0c;代价最小生成树则称为最小生成树。 许多应用问题都是一个求无向连通图的最小生成树问题。例如&#xff1a;要…

LeetCode 1214. 查找两棵二叉搜索树之和(二叉树迭代器+双指针)

文章目录1. 题目2. 解题1. 题目 给出两棵二叉搜索树&#xff0c;请你从两棵树中各找出一个节点&#xff0c;使得这两个节点的值之和等于目标值 Target。 如果可以找到返回 True&#xff0c;否则返回 False。 示例 1&#xff1a; 输入&#xff1a;root1 [2,1,4], root2 [1,…

java字符流写入式乱码_字节流乱码与字符流乱码

本文总结自&#xff1a;https://blog.csdn.net/mingliangniwo/article/details/44178491前提&#xff1a;数据展示过程&#xff1a;数据写入response容器&#xff0c;浏览器解析response容器字节流乱码问题如果用response.getOutputStream.write("中国".getBytes(&qu…

NYOJ - 78 圈水池 【凸包】

圈水池 时间限制&#xff1a;3000 ms | 内存限制&#xff1a;65535 KB 难度&#xff1a;4 描述 有一个牧场&#xff0c;牧场上有很多个供水装置&#xff0c;现在牧场的主人想要用篱笆把这些供水装置圈起来&#xff0c;以防止不是自己的牲畜来喝水&#xff0c;各个水池都标有各…

LeetCode 323. 无向图中连通分量的数目(并查集)

文章目录1. 题目2. 解题1. 题目 给定编号从 0 到 n-1 的 n 个节点和一个无向边列表&#xff08;每条边都是一对节点&#xff09;&#xff0c;请编写一个函数来计算无向图中连通分量的数目。 示例 1: 输入: n 5 和 edges [[0, 1], [1, 2], [3, 4]]0 3| |1…