C++ | Leetcode C++题解之第151题反转字符串中的单词

news2025/2/24 3:36:57

题目:

题解:

class Solution {
public:
    string reverseWords(string s) {
        int left = 0, right = s.size() - 1;
        // 去掉字符串开头的空白字符
        while (left <= right && s[left] == ' ') ++left;

        // 去掉字符串末尾的空白字符
        while (left <= right && s[right] == ' ') --right;

        deque<string> d;
        string word;

        while (left <= right) {
            char c = s[left];
            if (word.size() && c == ' ') {
                // 将单词 push 到队列的头部
                d.push_front(move(word));
                word = "";
            }
            else if (c != ' ') {
                word += c;
            }
            ++left;
        }
        d.push_front(move(word));
        
        string ans;
        while (!d.empty()) {
            ans += d.front();
            d.pop_front();
            if (!d.empty()) ans += ' ';
        }
        return ans;
    }
};

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

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

相关文章

「C系列」C 结构体

文章目录 一、C 结构体1. 定义结构体2. 声明结构体变量3. 初始化结构体变量4. 访问结构体成员5. 结构体数组6. 结构体指针7. 结构体嵌套 二、C 如何使用结构体1. 定义结构体类型2. 声明结构体变量3. 初始化结构体变量4. 访问结构体成员5. 结构体指针6. 在函数中使用结构体7. 注…

ArcGIS 10.2软件安装包下载及安装教程!

今日资源&#xff1a;ArcGIS 适用系统&#xff1a;WINDOWS 软件介绍&#xff1a; ArcGIS是一款专业的电子地图信息编辑和开发软件&#xff0c;提供一种快速并且使用简单的方式浏览地理信息&#xff0c;无论是2D还是3D的信息。软件内置多种编辑工具&#xff0c;可以轻松的完成…

最经济实惠的通配符SSL证书是哪款?

网络安全已成为企业和个人网站运营者关注的焦点。SSL证书作为确保数据传输安全的关键工具&#xff0c;其重要性不言而喻。特别是通配符SSL证书&#xff0c;因其能够为一个主域名及其所有子域名提供统一的安全保护&#xff0c;而受到广泛欢迎。但面对市场上众多的SSL证书品牌和价…

如何制作 PDF 文件

本文概述了如何使用 Microsoft Word、GeekerPDF、Google Docs 和 Mac Pages 创建 PDF。您还可以使用免费的 PDF 创建器&#xff1b;有许多可供下载或在线使用的创建器。 如何使用 Microsoft Word 创建 PDF 如果您拥有 2007 或更高版本的 Microsoft Word&#xff0c;创建 PDF 的…

重生之 SpringBoot3 入门保姆级学习(20、场景整合 Docker 的 Redis 对接与基础使用)

重生之 SpringBoot3 入门保姆级学习&#xff08;20、场景整合 Docker 的 Redis 对接与基础使用&#xff09; 6.3 整合 Redis 6.3 整合 Redis 1、创建新项目编写 application.properties 配置文件 # redis 配置 spring.data.redis.host192.168.1.4 spring.data.redis.port6379如…

搭建个人智能家居 6 -SGP30 CO₂与TVOC测量

搭建个人智能家居 6 -SGP30 CO₂与TVOC测量 前言说明ESPHomeHomeAssistant 前言 上一篇文章我们给这个智能家居系统添加了第三个外设&#xff0c;温湿度传感器。今天添加第四个外设&#xff0c;用于测量环境中CO₂与TVOC的传感器“SGP30”。 前问回顾&#xff1a; 搭建个人智能…

(游戏:挑一张牌)编写程序,模拟从一副 52 张的牌中选择一张牌。

(游戏:挑一张牌)编写程序&#xff0c;模拟从一副 52 张的牌中选择一张牌。程序应该显示牌的 大小(Ace、2、3、4、5、6、7、8、9、10、Jack、Queen、King)以及牌的花色(Clubs (黑梅花)、Diamonds(红方块)、Hearts(红心)、Spades(黑桃))。下面是这个程序的 运行示例: The card yo…

QT漂亮QSS样式模仿流行VUE Element UI ,QSS漂亮大方美观样式 QSS样式 QTableWidget 漂亮样式QSS 快速开发QSS漂亮界面

在现代应用程序开发中&#xff0c;用户界面&#xff08;UI&#xff09;的设计与用户体验&#xff08;UX&#xff09;占据了至关重要的位置。Vue.js框架因其灵活性和丰富的生态系统而广受欢迎&#xff0c;其中Element UI作为一套为Vue设计的桌面端组件库&#xff0c;以其清晰的视…

24年河北自考报名流程详细教程汇总

2024年河北自考本科报名马上就要开始了&#xff0c;想要参加考试报名的同学&#xff0c;提前看一下&#xff0c;了解一下报名流程&#xff0c;准备一些报名材料。 报名时间&#xff1a;2024年1月5日—10日8:00—22:00 考试时间&#xff1a;2024年4月13日—14日 报名照要求&…

贪心+思维,CF1615C - Menorah

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 1615C - Menorah 二、解题报告 1、思路分析 两次连续操作相当于交换两位奇数次操作, 改变了01频数01频数是否能一样 -> -1 否则就是调整到该在的位置的最小操作次数 不一样的位置一定是偶数个,否则01频数…

视频号怎么保存视频到手机?推荐4种方法!

短视频已经成为了网友们的新宠&#xff0c;那么对于我们这些普通人来说&#xff0c;如何能够轻松提取视频号上的视频呢&#xff1f;今天&#xff0c;就让我们一起来探讨一下视频号视频提取各种方法和工具&#xff01; 虽然视频号视频的保存方式多种多样&#xff0c;但为了照顾那…

byzer 笔记总结

1.总览&#xff08;简单了解&#xff09; 1.1 数据挖掘的定义 基于大数据技术&#xff0c;针对有价值是业务场景&#xff0c;对数据中台沉淀的大量数据进行探索&#xff0c;分析。寻找数据与数据之间潜藏的关系&#xff0c;转化为自动化的算法模型&#xff0c;从而获取有价值的…

python数据分析---ch10 数据图形绘制与可视化

python数据分析--- ch10 python数据图形绘制与可视化 1. Ch10--python 数据图形绘制与可视化1.1 模块导入1.2 数据导入 2. 绘制直方图2.1 添加图表题2.2 添加坐标轴标签 3. 绘制散点图4. 绘制气泡图5. 绘制箱线图5.1 单特征的箱线图5.2 多特征的箱线图 6. 绘制饼图7. 绘制条形图…

网络编程(四)

一、使用wireshark抓包分析协议头 &#xff08;一&#xff09;wireshark常用的过滤语句 tcp.port <想要查看的端口号> ip.src <想要查看的源IP地址> ip.dest <想要查看的目的IP地址> ip.addr <想要查看的IP地址>&#xff08;二&#xff09;抓包分…

【linux】应用程序访问百度时,操作系统内核网络接口日志

代码合入&#xff1a; 登录 - Gitee.comhttps://gitee.com/r77683962/linux-6.9.0/commit/c639573cc7c4984913d4a89884347e5a30a51eac 启动操作系统运行dmesg的日志像这样&#xff1a; dmesg_log/2024_06_14_00_40_54.txt r77683962/linux-6.9.0 - Gitee.com 注意&#xf…

利用MongoDB构建现代支付系统|附《利用AI在支付领域的优势》报告下载

MongoDB 支付 通过实时整合和分析任何格式的数据 来丰富支付体验 为消费者提供增值服务和功能 丰富的支付体验 接受并丰富任何支付数据类型 使用灵活的文档数据模型实时整合和处理任何支付数据类型。JSON 文档&#xff08;与 MongoDB 使用的数据格式相同&#xff09;是支…

AI 一键换脸,背景替换,ioDraw让图片更有趣

还在为繁琐的图片处理而烦恼吗&#xff1f;快来试试ioDraw的AI图片工具&#xff01; 它集图像识别、图像生成、智能换脸、背景替换、图像融合、肖像风格化、空间风格化、智能扩图、智能抠图、画质提升、美颜、拉伸修复、透视校正等功能于一身&#xff0c;为你提供前所未有的图…

ssm162基于SSM的药房药品采购集中管理系统的设计与实现+vue

药房药品采购集中管理系统的设计与实现 摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对药房药品采购信息管理混乱&…

使用Unsloth微调Llama3-Chinese-8B-Instruct中文开源大模型

微调Llama3-Chinese-8B-Instruct 微调是指在大规模预训练的基础模型上,使用特定领域或任务数据集进行少量迭代训练,以调整模型参数,提升其在特定任务上的表现。这种方法可以充分利用预训练模型的广泛知识,同时针对特定应用进行优化,达到更精准高效的效果。 Llama-3-Chinese-8B-…

【imagenet数据集下载】OpenxLab 数据集下载

最近在找Imagenet-1K的数据集&#xff0c;但是好多帖子上都说要到官网或网盘下载&#xff0c;但是下载慢&#xff0c;于是在OpenxLab中找到了Imagenet-1K数据集&#xff0c;只需要登陆就可以下载。 有两种方式下载&#xff1a; 1.页面下载 2.脚本下载 下载完成后会有ImageNe…