当前位置: 首页 > news >正文

【LeetCode 75】第二十四题(2390)从字符串中移除星号

目录

题目:

示例:

分析:

代码+运行结果:


题目:

示例:

分析:

题目给我们一个字符串,然后字符串中包含星号*,要求每个星号消除一个从星号左边起最近的一个字符,返回消除后的字符串。

首先每个星号*要消除从左开始的第一个字符,并且自身也被移除,这不免让我们想到先进后出,后进先出这个概念,因此我们自然而然就可以想到使用栈来解决这道题。

一开始我使用的是C++内置的stack(栈)这个容器后,由于我们返回的结果还是需要按照正常的顺序排列的字符串,而一个个将字符从栈中取出则是相反的顺序,如果要正常排列,还需要加一道工序,因此我们可以使用vector来模拟栈,并且取结果的时候也可以从左到右自然地取出。

我们先遍历一边原字符串,然后在遇到非星号的字符则直接入栈,遇到星号时不仅不入栈,还需要将栈顶元素弹出表示星号消除掉了一个从左开始第一个字符。(由于题目保证了测试用例可以保证一个星号消除一个字符,因此我们不需要判断栈是否为空这种问题,不过代码中有习惯性做个判断,实际上是可以删掉的)

代码+运行结果:

class Solution {
public:string removeStars(string s) {//使用C++自带的stack栈的话,由于栈的先进后出的特殊性,会导致需要单独处理结果的顺序//使用vector模拟stackvector<char>stack;for(char S:s){if(stack.empty()||S!='*') stack.push_back(S);   //如果栈为空或者元素不为*则入栈//由于题目保证合法操作(即一个*会消除一个字符)因此实际上else if可以改成else,并且上面的if也不需要判断栈是否不为空else if(!stack.empty()) stack.pop_back();   //如果为*,不仅不入栈,并且要弹出一个最后进入的元素}string res="";for(const char &S:stack){res+=S;}return res;}
};

相关文章:

【LeetCode 75】第二十四题(2390)从字符串中移除星号

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码运行结果&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们一个字符串&#xff0c;然后字符串中包含星号*&#xff0c;要求每个星号消除一个从星号左边起最近的一个字符&#xf…...

通向架构师的道路之weblogic的集群与配置

一、Weblogic的集群 还记得我们在第五天教程中讲到的关于Tomcat的集群吗? 两个tomcat做node即tomcat1, tomcat2&#xff0c;使用Apache HttpServer做请求派发。 现在看看WebLogic的集群吧&#xff0c;其实也差不多。 区别在于&#xff1a; Tomcat的集群的实现为两个物理上…...

SpringBoot 项目创建与运行

一、Spring Boot 1、什么是Spring Boot&#xff1f;为什么要学 Spring Boot Spring 的诞生是为了简化 Java 程序的开发的&#xff0c;而 Spring Boot 的诞生是为了简化 Spring 程序开发的。 Spring Boot 翻译一下就是 Spring 脚手架 盖房子的这个架子就是脚手架&#xff0c;…...

FOHEART H1数据手套:连接虚拟与现实,塑造智能交互新未来

在全新交互时代背景中&#xff0c;数据手套无疑是一种重要的科技产物。它不仅彻底改变了我们与虚拟世界的互动方式&#xff0c;更为我们提供了一种全新、更为直观的交互形式。 FOHEART H1数据手套结合了虚拟现实、手势识别等高新技术&#xff0c;用先进的传感技术和精准的数据…...

MyBatis学习笔记3

日志 1.日志工厂 如果一个数据库的操作&#xff0c;出现了异常&#xff0c;我们需要排错。日志就是最好的工具。 日志工厂&#xff1a;SLF4JLOG4J(掌握&#xff09;LOG4J2JDK_LOGGINGCOMMONS_LOGGINGSTDOUT_LOGGING&#xff08;掌握&#xff09;NO_LOGGING 2.分页 减少数据…...

ES6学习-Symbol

Symbol 数据类型Symbol&#xff0c;表示独一无二的值。 对象的属性名可有两种类型&#xff0c;一种是原来的字符串&#xff0c;另一种是新增的 Symbol 类型 可以保证不与其他属性名产生冲突。 let s1 Symbol() let s2 Symbol() console.log(s1, s2, s1 s2)//Symbol() Sy…...

【Redis】使用Docker镜像配置集群时的Operation timed out问题

不知道有没有小伙伴跟我一样是使用的Docker镜像进行Redis集群案例模拟的&#xff08;三台虚拟机确实带不动 &#xff09;&#xff0c;然后我遇到了一个问题&#xff1a;Could not connect to Redis at 172.17.0.2:6379: Operation timed out 172.17.0.2是我其中一个Redis实例的…...

Java 生产初学常用注解

目录 0. 基础语法逻辑运算符继承抛出异常获取数据方式泛型 1. 接收前端数据&#xff08;controller&#xff09;mybatis1. QueryWrapper获取和赋值 2. service 层注解 3. Dao 层&#xff08;与数据库交互&#xff09;3.1 mybatis-plus中BaseMapper 4. ELK框架es配置sql参数logs…...

mousedown拖拽功能(vue3+ts)

因为项目有rem适配&#xff0c;使用第三方插件无法处理适配问题&#xff0c;所有只能自己写拖拽功能了 拖拽一般都会想到按下&#xff0c;移动&#xff0c;放开&#xff0c;但是本人亲测&#xff0c;就在div绑定一个按下事件就行了&#xff08;在事件里面写另外两个事件&#x…...

【论文阅读】基于深度学习的时序异常检测——TransAD

系列文章链接 数据基础&#xff1a;多维时序数据集简介 论文一&#xff1a;2022 Anomaly Transformer&#xff1a;异常分数预测 论文二&#xff1a;2022 TransAD&#xff1a;异常分数预测 论文链接&#xff1a;TransAD.pdf 代码库链接&#xff1a;https://github.com/imperial…...

NLPCC 出版部分相关源码记录

目录 Download Unzip Author Title Affiliation Check number of tex Zip Rename Delete Download import requests from bs4 import BeautifulSoup# 登录网站并获取登录后的 session def login(username, password):login_url https://example.com/loginsession re…...

【Windbg】通过网络调试windows内核

环境 windows版本&#xff1a;win10_x64 1901 windbg版本&#xff1a;1.2306.12001.0 HOST 1、windbg软件设置。 点击菜单文件&#xff0c;然后如下图操作。 2、等待连接。 ************* Waiting for Debugger Extensions Gallery to Initialize **************>>&…...

代码随想录算法训练营之JAVA|第二十四天| 93. 复原 IP 地址

今天是第24天刷leetcode&#xff0c;立个flag&#xff0c;打卡60天。 算法挑战链接 93. 复原 IP 地址https://leetcode.cn/problems/restore-ip-addresses/ 第一想法 题目理解&#xff1a;将一串数字字符串变成正确的ip格式的字符串。 这类题目是切分字符串&#xff0c;ip一…...

网络安全 Day30-运维安全项目-堡垒机部署

运维安全项目-堡垒机部署 1. 运维安全项目-架构概述2. 运维安全项目之堡垒机2.1 堡垒机概述2.2 堡垒机选型2.3 环境准备2.4 部署Teleport堡垒机2.4.1 下载与部署2.4.2 启动2.4.3 浏览器访问teleport2.4.4 进行配置2.4.5 安装teleport客户端 2.5 teleport连接服务器 1. 运维安全…...

电脑文件夹备份命令

电脑文件夹备份 cmd窗口输入shell:startup 将备份.bat文件放到&#xff0c;自启动文件夹下 bat文件内容写以下就可以了 Xcopy "D:\文件\" "F:\文件备份\" /E/H/C/I/y...

RocketMQ Learning(一)

目录 一、RocketMQ 0、RocketMQ的产品发展 1、RocketMQ安装 1.1、windows下的安装 注意事项 1.2、Linux下的安装 1.3、源码的安装 1.4、控制台 2、消息发送方式 2.1、发送同步消息 2.2、发送异步消息 2.3、单向发送 3、消息消费方式 3.1、负载均衡模式&#xff0…...

libmpv使用滤镜处理视频进行播放

一、前言 作为一个功能强大的多媒体框架,libmpv为开发者提供了广泛的功能和灵活的控制权。滤镜是libmpv的一个重要特性,允许开发者对视频进行各种实时处理和增强,从而满足用户对于个性化、创意化和高质量视频体验的需求。 滤镜是一种在视频渲染过程中应用特定效果的技术。…...

Harbor.cfg 配置文件参数详解

目录 Harbor.cfg 配置文件参数详解 所需参数&#xff1a; hostname&#xff1a; ui_url_protocol&#xff1a; max_job_workers&#xff1a; db_password&#xff1a; customize_crt&#xff1a; ssl_cert&#xff1a; ssl_cert_key&#xff1a; secretkey_path&#…...

模仿火星科技 基于cesium+ 贴地测量+可编辑

当您进入Cesium的编辑贴地测量世界&#xff0c;下面是一个详细的操作过程&#xff0c;帮助您顺利使用这些功能&#xff1a; 1. 创建提示窗&#xff1a; 启动Cesium应用&#xff0c;地图场景将打开&#xff0c;欢迎您进入编辑模式。在屏幕的一角&#xff0c;一个友好的提示窗将…...

模仿火星科技 基于cesium+角度测量+高度测量+可编辑

1. 创建提示窗&#xff1a; 启动Cesium应用&#xff0c;地图场景将打开&#xff0c;欢迎您进入编辑模式。 在屏幕的一角&#xff0c;一个友好的提示窗将呈现&#xff0c;随着您的操作&#xff0c;它会为您提供有用的信息和指导。 2. 绘制面积&#xff1a; 轻轻点击鼠标左键&a…...

s2-pro效果展示:高语速新闻播报(220字/分钟)清晰度实测

s2-pro效果展示&#xff1a;高语速新闻播报&#xff08;220字/分钟&#xff09;清晰度实测 1. 专业语音合成新标杆 s2-pro作为Fish Audio开源的专业级语音合成模型镜像&#xff0c;正在重新定义文本转语音的技术标准。不同于常见的聊天式语音工具&#xff0c;s2-pro专注于提供…...

零门槛构建专属A股数据平台:3大优势+4步部署+5类应用场景

零门槛构建专属A股数据平台&#xff1a;3大优势4步部署5类应用场景 【免费下载链接】AShareData 自动化Tushare数据获取和MySQL储存 项目地址: https://gitcode.com/gh_mirrors/as/AShareData 还在为量化研究时反复下载数据而抓狂&#xff1f;每次回测都要等待API响应&a…...

Eino:Agent的LLM抽象

拨开迷雾看本质&#xff1a;从零推导 ChatModelAgent&#xff08;模型适配层与 Agent 运行时&#xff09; 在 react.md 里看到的是 “ReAct 作为范式” 的推导&#xff1b;而本篇把视角切到 chatmodel.go 作为工程实现&#xff1a;它不只是“为了 ReAct 画图”&#xff0c;更是…...

AI Agent操作系统架构师:Harness Engineer解析

Harness Engineer&#xff1a;AI Agent时代的「系统架构师」&#xff0c;打造可执行可信赖的智能体操作系统引言 当大语言模型从「对话助手」进化为「能干活的AI Agent」&#xff0c;我们发现一个核心矛盾&#xff1a;模型的概率性灵活能力与业务的确定性执行要求始终无法调和。…...

vLLM-v0.17.1效果展示:vLLM在中文长文本摘要任务中的准确率实测

vLLM-v0.17.1效果展示&#xff1a;vLLM在中文长文本摘要任务中的准确率实测 1. vLLM框架简介 vLLM是一个专注于提升大语言模型推理效率的开源库&#xff0c;它的核心目标是让开发者能够更轻松地部署和使用各类大模型。这个项目最初由加州大学伯克利分校的研究团队发起&#x…...

VS Code玩转Arduino开发——插件配置与工程搭建全攻略

1. 为什么选择VS Code开发Arduino&#xff1f; 很多Arduino爱好者刚开始接触开发时&#xff0c;都会使用官方提供的Arduino IDE。这个编辑器确实简单易用&#xff0c;但随着项目复杂度提升&#xff0c;你会发现它缺少很多现代编辑器该有的功能——代码补全、语法高亮、项目管理…...

3个步骤解决老旧系统Python支持难题:Windows 7及以上系统兼容性解决方案

3个步骤解决老旧系统Python支持难题&#xff1a;Windows 7及以上系统兼容性解决方案 【免费下载链接】PythonVista Python 3.9 installers that support Windows 7 SP1 and Windows Server 2008 R2 项目地址: https://gitcode.com/gh_mirrors/py/PythonVista 在企业办公…...

QwQ-32B在自然语言处理中的实战应用

QwQ-32B在自然语言处理中的实战应用 1. 引言&#xff1a;当NLP遇上推理专家 自然语言处理&#xff08;NLP&#xff09;领域最近迎来了一位强力选手——QwQ-32B。这不是普通的语言模型&#xff0c;而是一个专门为推理和思考设计的模型。想象一下&#xff0c;你有一个不仅能理解…...

ollama-QwQ-32B模型微调:提升OpenClaw任务执行准确率的实战方法

ollama-QwQ-32B模型微调&#xff1a;提升OpenClaw任务执行准确率的实战方法 1. 为什么需要微调模型来优化OpenClaw 上周三凌晨3点&#xff0c;我被一阵刺耳的提示音惊醒——OpenClaw又闯祸了。它本应自动整理我的项目文档&#xff0c;却误删了3个关键文件夹&#xff0c;还把桌…...

OpenClaw跨平台对比:nanobot在Mac/Win/Linux的表现差异

OpenClaw跨平台对比&#xff1a;nanobot在Mac/Win/Linux的表现差异 1. 测试背景与实验设计 去年夏天我开始尝试用OpenClaw搭建个人自动化工作流时&#xff0c;发现不同操作系统下的表现差异远超预期。这次我选择了基于Qwen3-4B模型的nanobot镜像&#xff0c;在MacBook Pro M1…...