5.19 - Stacks and Queues
k[encoded_string] 的編碼字符串,將編碼的字符重復k次,最后打印出一個完整的字符串。
思路:使用棧結(jié)構(gòu),由里層向外層,層層解碼,當遇到了[ 字符時,向stack當中添加元素,當遇到了]字符時,將stack當中的元素pop() 出來。
Q: 重復的數(shù)字k如何處理? 用一個 直接用一個命令將字符串復制k次?
Q: 如何構(gòu)建一個新的字符串? String builder ?
Simplify Path
題目描述: 給出一個絕對路徑,返回一個相對路徑
Corner Case: 1.空路徑返回 / 2.忽略重復的/ 符號
思路 只需要找到最后的一個 / 將這個/后面跟隨的字符返回?
字符串的處理,暫時跳過
算法課上提到過的一個使用兩個棧結(jié)構(gòu)的算法 Arithmetic expression evaluation
步驟:
創(chuàng)建兩個棧,一個數(shù)值棧存value值,一個符號棧存operator,
2.讀取字符串 對于左括號,不處理,對于右括號,從符號棧中pop出一個符號,從數(shù)值棧中pop出兩個元素,將兩個元素根據(jù)pop出的符號做操作,并將結(jié)果返回到
數(shù)值棧當中。
Q1: 如何判斷一個c 是否是數(shù)字?
A: Character.isDigit(c).
Q2: operator 字符如何轉(zhuǎn)變成真正的操作符?
Q3:
轉(zhuǎn)載于:https://www.cnblogs.com/kong-xy/p/9062349.html
總結(jié)
以上是生活随笔為你收集整理的5.19 - Stacks and Queues的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 基于注解IOC组件化/模
- 下一篇: ios 隔空投安装ipa_ipa文件是什