力扣解法汇总1678. 设计 Goal 解析器
设计 汇总 力扣 解法 解析器 goal
2023-09-11 14:18:52 时间
目录链接:
力扣编程题-解法汇总_分享+记录-CSDN博客
GitHub同步刷题项目:
https://github.com/September26/java-algorithms
原题链接:力扣
描述:
请你设计一个可以解释字符串 command
的 Goal 解析器 。command
由 "G"
、"()"
和/或 "(al)"
按某种顺序组成。Goal 解析器会将 "G"
解释为字符串 "G"
、"()"
解释为字符串 "o"
,"(al)"
解释为字符串 "al"
。然后,按原顺序将经解释得到的字符串连接成一个字符串。
给你字符串 command
,返回 Goal 解析器 对 command
的解释结果。
示例 1:
输入:command = "G()(al)" 输出:"Goal" 解释:Goal 解析器解释命令的步骤如下所示: G -> G () -> o (al) -> al 最后连接得到的结果是 "Goal"
示例 2:
输入:command = "G()()()()(al)" 输出:"Gooooal"
示例 3:
输入:command = "(al)G(al)()()G" 输出:"alGalooG"
提示:
1 <= command.length <= 100
command
由"G"
、"()"
和/或"(al)"
按某种顺序组成
解题思路:
略
代码:
class Solution {
public String interpret(String command) {
int index = 0;
StringBuilder builder = new StringBuilder();
while (index < command.length()) {
if (command.startsWith("G", index)) {
builder.append("G");
index += 1;
continue;
}
if (command.startsWith("()", index)) {
builder.append("o");
index += 2;
continue;
}
if (command.startsWith("(al)", index)) {
builder.append("al");
index += 4;
}
}
return builder.toString();
}
}
相关文章
- 错误码如何设计才合理?
- 浅述PHP7底层设计01-PHP7语言执行原理
- 数据库设计的基本步骤
- rtmp直播拉流客户端EasyRTMPClient设计过程中时间戳问题汇总
- rtmp直播拉流客户端EasyRTMPClient设计过程中时间戳问题汇总
- 关于DDD领域驱动设计的理论知识收集汇总
- 【翻译】 问HS:设计和实现可扩容服务?
- Qt编写的项目作品2-控件属性设计器(组态)
- SAP CRM WebClient UI data loss设计原理
- 设计素材管理软件 PinCap:测评与优惠
- Atitit it sftwr dev 原则准则 principle 目录 第一章 简单原则 kiss1 第一节 . You Ain’t Gonna Need It(YAGNI)避免过度设计1
- Atitit.会员卡(包括银行卡)api的设计
- Atitit.ioc 动态配置文件guice 设计原理
- 利用jQuery设计横/纵向菜单
- 秒杀程序数据库设计
- 《Java程序性能优化》之设计优化
- AI模型设计:yolov1+darknet+yolov2,3,4,5,X全系列资料汇总[源码仓库]标星收藏
- 芯片 设计资料下载
- 基于HLS的linebuffer设计(使用hls_video.h库)
- AI模型设计:yolov1+darknet+yolov2,3,4,5,X全系列资料汇总[源码仓库]标星收藏