LeetCode 856. 括号的分数

解题思路

栈模拟。

相关代码

复制代码
class Solution {
    public int scoreOfParentheses(String s) {
        //stack中的值是左括号的的右边所有合法配对括号的值
        Stack<Integer> stack = new Stack<>();
        stack.push(0);
        for(int i=0;i<s.length();i++)
            if(s.charAt(i) == '(') stack.push(0);           
            else{
                int t = stack.pop();
                int k = stack.pop();
                if(t == 0) stack.push(k+t+1);
                else stack.push(k+t*2);
            }    
        return stack.peek();
    }
}
相关推荐
十八岁讨厌编程9 分钟前
【算法训练营 · 补充】LeetCode Hot100(下)
算法·leetcode·职场和发展
一路往蓝-Anbo16 分钟前
C语言从句柄到对象 (三) —— 抛弃 Malloc:静态对象池与索引句柄的终极形态
c语言·开发语言·数据结构·stm32·单片机·算法
fantasy_arch1 小时前
SVT-AV1 B帧决策和mini-GOP决策分析
算法·av1
声声codeGrandMaster1 小时前
逻辑回归-泰坦尼克号
算法·机器学习·逻辑回归
mu_guang_1 小时前
算法图解2-选择排序
数据结构·算法·排序算法
xiaowu0802 小时前
IEnumerable、IEnumerator接口与yield return关键字的相关知识
java·开发语言·算法
报错小能手2 小时前
数据结构 b+树
数据结构·b树·算法
元亓亓亓2 小时前
LeetCode热题100--64. 最小路径和--中等
算法·leetcode·职场和发展
mit6.8242 小时前
回溯+位运算|前缀和优化背包
算法
努力学算法的蒟蒻2 小时前
day49(12.30)——leetcode面试经典150
算法·leetcode·面试