【栈】【856. 括号的分数】【中等】(需回顾)
给定一个平衡括号字符串 S,按下述规则计算该字符串的分数:
() 得 1 分。
AB 得 A + B 分,其中 A 和 B 是平衡括号字符串。
(A) 得 2 * A 分,其中 A 是平衡括号字符串。
示例 1:输入: "()"输出: 1示例 2:输入: "(())"输出: 2示例 3:输入: "()()"输出: 2示例 4:输入: "(()(()))"输出: 6
提示:
S 是平衡括号字符串,且只含有 ( 和 ) 。
2 <= S.length <= 50
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/valid-parentheses
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
个人题解:
利用栈存储深度值来依次计算
例"(()(()))"
000 //(000 //((01 //(()010 //(()(0100 //(()((011 //(()(()03 //(()(())6 //(()(()))
个人代码:
public int ScoreOfParentheses(string S) {Stack<int> stack = new Stack<int>();stack.Push(0);for (int i = 0; i < S.Length; i++){if(S[i]=='('){stack.Push(0);}else{int v = stack.Pop();int w = stack.Pop();stack.Push(w + Math.Max(2 * v, 1));}}return stack.Peek();}
【栈】【856. 括号的分数】【中等】(需回顾)相关推荐
- LeetCode 算法 856. 括号的分数
856. 括号的分数 Ideas 遇到括号那基本就是用栈了. 括号的分数会因为深度的增加而成倍增加,所以利用栈的时候需要记录深度. 遇到一个(的时候,将深度+1,并且新的深度得分置为0,遇到一个)的时 ...
- 力扣解法汇总856. 括号的分数
目录链接: 力扣编程题-解法汇总_分享+记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接:力扣 描 ...
- LeetCode 856. 括号的分数
1. 题目 给定一个平衡括号字符串 S,按下述规则计算该字符串的分数: () 得 1 分. AB 得 A + B 分,其中 A 和 B 是平衡括号字符串. (A) 得 2 * A 分,其中 A 是平衡 ...
- 【栈的应用】括号的分数
1. 题目描述: 给定一个平衡括号字符串 S,按下述规则计算该字符串的分数: () 得 1 分. AB 得 A + B 分,其中 A 和 B 是平衡括号字符串. (A) 得 2 * A 分,其中 A ...
- python 判断括号是否匹配_使用Python实现一个栈判断括号是否平衡
栈(Stack)在计算机领域是一个被广泛应用的集合,栈是线性集合,访问都严格地限制在一段,叫做顶(top). 举个例子,栈就想一摞洗干净的盘子,你每次取一个新盘子,都是放在这一摞盘子的最上头,当你往里 ...
- python括号匹配算法_使用Python的栈实现括号匹配算法
利用Python列表实现一个栈的结构,再使用栈实现括号匹配的算法,所谓的括号匹配是指在编程语言中,括号是成对出现的,最先出现的左括号,对应于最后的右括号,后出现的左括号对应于最新右括号,符合栈的特征 ...
- 利用顺序栈解决括号匹配问题(c++)-- 数据结构
利用顺序栈解决括号匹配问题(c++)-- 数据结构 参考文章: (1)利用顺序栈解决括号匹配问题(c++)-- 数据结构 (2)https://www.cnblogs.com/yi2105/p/106 ...
- C++ 栈的括号匹配
总结归纳 算法思想: 设置一个空栈,顺序读取括号.读取左括号时,将括号入栈:读取右括号时,弹出栈顶元素,栈顶即是与之匹配的最近的左括号. 匹配不成功的三种情况:(1)读取右括号时,此时栈空,没有与之匹 ...
- python括号匹配o(1)复杂度_Python面试题:使用栈处理括号匹配问题
括号匹配是栈应用的一个经典问题, 题目 判断一个文本中的括号是否闭合, 如: text = "({[({{abc}})][{1}]})2([]){({[]})}[]", 判断所有括 ...
最新文章
- Linux简单的http服务器:SimpleHTTPServer
- 家乐福首家付费会员店遇到「喜与忧」背后,行业同质化问题浮出水面
- js match函数注意
- python实现秒杀商品的微信自动提醒功能(附代码)
- AIX6.1平台11.2.0.3RAC 实施手册
- 拉普拉斯平滑Laplace Smoothing
- AliExpress国际速卖通唰信誉用什么虚拟卡用信可以成功扣款?
- ssm医院挂号就诊预约系统毕业设计源码250853
- Down Payment一个不错的练习
- 计算机网络 自顶向下方法 (一) 笔记 总结 第一章 概述
- 【PHP+微信开发】实现微信对账单处理
- C# SolidWorks 二次开发 API --- 2018版 中文翻译 之官方示例
- Execution和ProcessInstance的分别
- CC00382.CloudKubernetes——|KuberNetesCI/CD.V20|——|Jenkins.v08|kubeconfig多集群配置.v02|
- PyTorch深度学习(23)Transformer及网络结构ViT
- stm32Cubemx实用篇(四):SD卡读写实验
- 知识点 - 分拆数/整数拆分
- 基于ie内核,浏览器自带flash插件
- Python 3.6实现单博主微博文本、图片及热评爬取
- 如何彻底删除mysql_如何彻底删除mysql - 注册表问题
热门文章
- 关于NLP相关技术全部在这里:预训练模型、图神经网络、模型压缩、知识图谱、信息抽取、序列模型、语法分析、文本处理...
- 3天造了一个深度学习轮子,生猛!
- 综述:Image Caption 任务之语句多样性
- Call for Papers | 2019 年 IEEE 国际进化计算大会
- Shallow-UWnet:水下图像增强新网络 2021年1月AAAI顶会论文
- 【学习笔记】吴恩达机器学习 WEEK1
- 从国内的源使用pip安装库,提高安装速度
- php简单网页制作代码,用HTML和CSS以及JS制作简单的网页菜单界面的代码
- 牛客题霸 SQL5 查找所有员工的last_name和first_name以及对应部门编号dept_no
- mysql 有十进制类型吗_MySQL数据类型