2390.从字符串中移除星号

简介: 2390.从字符串中移除星号

题目:给你一个包含若干星号 * 的字符串 s 。

在一步操作中,你可以:

  • 选中 s 中的一个星号。
  • 移除星号 左侧 最近的那个 非星号 字符,并移除该星号自身。

返回移除 所有 星号之后的字符串。

注意:

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

解题思路:从遍历的顺序来看,最后遍历到了先删除,用栈来方便解决。

遍历字符,遇到*就弹出栈顶,否则就入栈。

最后把栈里的字符以逆序组成字符串即是答案。

class Solution{
    public String removeStars(String s){
        Stack<Character>stack=new Stack<>();
        for(char ch:s.toCharArray()){
            if(ch=='*'){
                stack.pop();            
            }else{
                stack.push(ch);            
            }        
        }    
        StringBuilder sb=new StringBuilder();
        while(!stack.isEmpty()){
            sb.insert(0,stack.pop());        
        }
        return sb.toString();
    }
}


相关文章
|
数据可视化 数据挖掘
【数据挖掘】多项式回归原理介绍及实战应用(超详细 附源码)
【数据挖掘】多项式回归原理介绍及实战应用(超详细 附源码)
902 1
|
算法 Linux 数据处理
《操作系统》—— 处理机调度算法
《操作系统》—— 处理机调度算法
4958 1
|
设计模式 Java 应用服务中间件
Tomcat 架构原理解析到设计借鉴
Tomcat 架构原理解析到设计借鉴
616 0
|
XML 前端开发 数据格式
三分钟搞定 Python XPath 语法
XPath(XML Path Language)是一种用于在 XML 文档中查找信息的语言。它基于树状结构的 XML 文档,可以通过路径表达式来选取节点或节点集。也常常用来解析 HTML。 如果你是一个前端,对用路径获取元素可能陌生又熟悉。陌生是很多的路径,熟悉的路径上又有熟悉的属性和方法。下面我们就来探究一下 XPath 的魅力。
|
人工智能 自然语言处理 搜索推荐
【人工智能】人工智能(AI)、Web 3.0和元宇宙三者联系、应用及未来发展趋势的详细分析
人工智能(AI)、Web 3.0和元宇宙作为当前科技领域的热门话题,它们之间存在着紧密的联系,并在各自领域内展现出广泛的应用和未来的发展趋势。以下是对这三者联系、应用及未来发展趋势的详细分析
539 2
【人工智能】人工智能(AI)、Web 3.0和元宇宙三者联系、应用及未来发展趋势的详细分析
|
缓存
计算机网络——数据链路层-可靠传输的实现机制:选择重传协议SR(介绍、工作原理、窗口尺寸、题目练习)
计算机网络——数据链路层-可靠传输的实现机制:选择重传协议SR(介绍、工作原理、窗口尺寸、题目练习)
1669 1
|
安全 网络安全 网络架构
|
存储 安全 算法
真实世界的密码学(一)(2)
真实世界的密码学(一)
493 0
|
Java
java手机号码脱敏
手机号脱敏处理主要是通过使用String.replaceAll()方法
518 0
|
存储 Linux 数据处理
深入解析Linux下的struct tm结构体:时间信息的存储与操作
在Linux系统编程中,`struct tm` 结构体是一个重要的数据结构,用于存储和表示日期和时间信息。它提供了丰富的成员变量,允许开发者访问和操作年、月、日、时、分、秒等时间单位。本文将详细介绍 `struct tm` 结构体的成员变量、使用方法以及如何将时间信息以更易读的方式呈现给用户。
5242 3