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

LeetCode-2390. 从字符串中移除星号

给你一个包含若干星号 * 的字符串 s 。
在一步操作中,你可以:
选中 s 中的一个星号。
移除星号 左侧 最近的那个 非星号 字符,并移除该星号自身。
返回移除 所有 星号之后的字符串。

注意:
生成的输入保证总是可以执行题面中描述的操作。
可以证明结果字符串是唯一的。

地址:https://leetcode.cn/problems/removing-stars-from-a-string/description/?envType=study-plan-v2&envId=leetcode-75

实现思路:
遍历字符串s,如果s[i]不为 ‘’ 则入栈,如果为 '’ 则统计 ‘*’ 的个数并出栈相应个数的字符串

func removeStars(s string) string {stackStr := []uint8{} // 定义栈length := len(s)stars := 0 // 统计 * 的个数change := false for i := 0; i < length; i++ {if s[i] != '*' {// 入栈stackStr = append(stackStr, s[i])} else {change = truefor i < length && s[i] == '*' {stars++i++}}// 在入栈for遍历的最后一次会使i多加一次,这一次会使一个字符串没有入栈,所以i--if change {change = falsei--}// 出栈stackStr = stackStr[:len(stackStr)-stars]stars = 0}return string(stackStr)
}
http://www.lqws.cn/news/464905.html

相关文章:

  • 力扣网C语言编程题:多数元素
  • DAY 38 Dataset和Dataloader类
  • 分布式锁的四种实现方式:从原理到实践
  • 高云GW5AT-LV60 FPGA图像处理板
  • React Native自定义底部弹框
  • Docker高级管理--容器通信技术与数据持久化
  • 华为云Flexus+DeepSeek征文|体验华为云ModelArts快速搭建Dify-LLM应用开发平台并创建b站视频总结大模型
  • Java ArrayList集合和HashSet集合详解
  • 【自动鼠标键盘控制器|支持图像识别】
  • 从代码学习深度学习 - 预训练BERT PyTorch版
  • 文本分类与聚类:让信息“各归其位”的实用方法
  • 最具有实际意义价值的比赛项目
  • CMS与G1的并发安全秘籍:如何在高并发的垃圾回收中保持正确性?
  • 【开源初探】基于 Qwen2.5VL的文档解析工具:docext
  • 【Linux-shell】探索Dialog 工具在 Shell 图形化编程中的高效范式重构
  • synchronized 和 ReentrantLock 的区别
  • 探索 Oracle Database 23ai 中的 SQL 功能
  • 团结引擎 1.5.0 更新 | OpenHarmony 平台开发体验全面升级,突破游戏类应用帧率限制
  • CertiK联创顾荣辉将于港大活动发表演讲,分享Web3安全与发展新视角
  • (LeetCode 面试经典 150 题) 80. 删除有序数组中的重复项 II (双指针、栈)
  • AI与SEO关键词协同进化
  • SQL关键字三分钟入门:INSERT INTO —— 插入数据详解
  • Armbian 开机启动点灯脚本
  • 【C++特殊工具与技术】局部类
  • 从事登高架设作业需要注意哪些安全事项?
  • 57-Oracle SQL Profile(23ai)实操
  • 内容搜索软件AnyTXT.Searcher忘记文件名也能搜,全文检索 1 秒定位文件
  • Java求职者面试指南:微服务技术与源码原理深度解析
  • Rabbitmq集成springboot,手动确认消息basicAck、basicNack、basicReject的使用
  • 在微信小程序wxml文件调用函数实现时间转换---使用wxs模块实现