A.每日一题:3612. 用特殊操作处理字符串 I

题目链接:3612. 用特殊操作处理字符串 I(中等)

算法原理:

解法:模拟

4ms击败100.00%

时间复杂度O(2ⁿ),其中 n 是 s 的长度,最坏情况下把一个字符复制 n-1 次,得到长为 2ⁿ⁻¹ 的字符串,这个过程的时间为等比数列之和O(1+2+4+8+......)=O(2ⁿ)

注意字符串为空的时候,不能删除最后一个字母(否则会报错)

Java代码:

java 复制代码
class Solution {
    //3612. 用特殊操作处理字符串 I
    public String processStr(String s) {
        StringBuffer cur=new StringBuffer();
        for(char c:s.toCharArray()){
            if(c=='*'){
                //多套一个 if 防止非小写字母进入 else 里
                if(!cur.isEmpty())
                    cur.setLength(cur.length()-1);
            }
            else if(c=='#') cur.append(cur);
            else if(c=='%') cur.reverse();
            else cur.append(c);
        }
        return cur.toString();
    }
}
相关推荐
lsc_blog44 分钟前
年终自评别贴提交记录,把技术产出讲成变化
数据库·面试·职场和发展·跳槽·求职招聘
2601_962106646 小时前
【Java Set综合实战】商品管理系统 + 图书收藏系统|Product、Book自定义类全套代码
java
RuoyiOffice6 小时前
SpringBoot+Vue3 凭证生命周期设计:审核、过账、冲销与反过账怎样保持账目一致
java·spring boot·事务·springboot3·财务系统·会计凭证·ruoyi office
GoAI7 小时前
DeepSeek Harness Memory (一)主流记忆插件总结
后端·算法·面试
2601_962106647 小时前
HashMap入门|工号-姓名键值存储、两种遍历方式、根据key/value查
java
Pniubi7 小时前
力扣54.螺旋矩阵
算法·leetcode·矩阵
杨凯凡7 小时前
Spring Framework 7 API 版本管理实战:请求头路由、兼容迁移与废弃策略
java·rest api·springframework·spring boot 4·api版本管理
T_Wizard8 小时前
同一个问题写了 4 遍:官方 SDK / HTTP / Spring AI / LangChain4j,到底该选哪个
java·ai编程
hai_android8 小时前
AudioTrack 深度解析:从原理到实战
android·java·kotlin
斯维赤8 小时前
限流、熔断、降级,你真的分得清吗?
java·后端·架构