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();
    }
}


相关文章
|
8月前
|
算法 前端开发
从字符串中移除星号
从字符串中移除星号
68 0
|
2月前
删除字符串中的除字母外的字符
【10月更文挑战第31天】删除字符串中的除字母外的字符。
41 4
|
4月前
|
存储
删除一个字符串中的指定字母
删除一个字符串中的指定字母。
41 7
|
SQL 运维 数据库
根据某个特定字符删除一行
根据某个特定字符删除一行
|
C语言 C++
从字符串中删除指定字符
从字符串中删除指定字符
143 2
|
数据安全/隐私保护 索引
labview字符串数据长度连接子字符串大小写替换删除插入日期匹配
labview字符串数据长度连接子字符串大小写替换删除插入日期匹配
269 0
7-121 删除字符串中的子串
7-121 删除字符串中的子串
78 0
删除字符串中字符最少的字符并返回
删除字符串中字符最少的字符并返回
|
Python
一日一技:如何移除所有不可见字符?
一日一技:如何移除所有不可见字符?
474 0
一日一技:如何移除所有不可见字符?