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

栈系列一>字符串解码

目录

  • 题目:
  • 解析:
  • 代码:

题目:

链接: link这里是引用

解析:

这里是引用在这里插入图片描述

代码:

class Solution {public String decodeString(String _s) {char[] s = _s.toCharArray();int n = s.length;int i = 0;Stack<Integer> nums = new Stack<>();Stack<StringBuffer> st = new Stack<>();//先放一个空串进去,防止越界访问st.push(new StringBuffer());while(i < n){if(s[i] >= '0' && s[i] <= '9'){int tmp = 0;while(i < n && Character.isDigit(s[i])){tmp = tmp * 10 + (s[i]-'0');i++;}nums.push(tmp);}else if(s[i] == '['){//把'['后面的字符串提取出来,放入sti++;StringBuffer tmp = new StringBuffer();while(i < n && s[i] >= 'a' && s[i] <= 'z'){tmp.append(s[i]);i++;}st.push(tmp);}else if(s[i] == ']'){//解析int k = nums.pop();StringBuffer tmp = st.pop();while(k > 0){st.peek().append(tmp);k--;}i++;}else{//单独遇到字符串,提取字符放入st栈顶字符串后面StringBuffer tmp = new StringBuffer();while(i < n && s[i] >= 'a' && s[i] <= 'z'){tmp.append(s[i]);i++;}st.peek().append(tmp);}}return st.peek().toString();}
}
http://www.xdnf.cn/news/281449.html

相关文章:

  • 2021年第十二届蓝桥杯省赛B组C++题解
  • TS 变量类型生成
  • 构建良好的 AI 文化:解锁未来的密钥
  • **电商推荐系统设计思路**
  • 数字信号处理学习笔记--Chapter 1 离散时间信号与系统
  • 算法竞赛进阶指南.闇の連鎖
  • TF-IDF与CountVectorizer、TfidfVectorizer的联系与区别
  • C++日志系统实现(一)
  • 每日c/c++题 备战蓝桥杯(洛谷P1190 [NOIP 2010 普及组] 接水问题)
  • 56认知干货:智能化产业
  • 2025-05-04 Unity 网络基础6——TCP心跳消息
  • TestBench激励与待测
  • 配置和使用持久卷
  • 如何克服情绪拖延症?
  • ​​工业机器人智能编程:从示教器到AI自主决策​​
  • [Java]Java的三个阶段
  • htop电脑性能检测
  • MYSQL数据库突然消失
  • 【漫话机器学习系列】238.训练误差与测试误差(Training Error And Test Error)
  • [特殊字符] 人工智能大模型之开源大语言模型汇总(国内外开源项目模型汇总) [特殊字符]
  • 引入spdlog后程序链接很慢
  • 使用 OpenCV 和 Dlib实现轮廓绘制
  • 「Mac畅玩AIGC与多模态18」开发篇14 - 多字段输出与结构控制工作流示例
  • 【MySQL】用户管理
  • Javascript学习笔记1——数据类型
  • 【哈希表的简单介绍】
  • Python|Pyppeteer实现自动登录小红书(32)
  • PyQt5基本介绍
  • 第八章.javaI/O和反射机制
  • 【深度解析】DCN-V2:Google新一代特征交叉网络,如何实现推荐系统精准度飞跃?