leetcode 1541
简介
简单来说就是栈的使用。
思路:
当发现一个左括号的时候压入栈中,
遇到右括号的时候
检查下一个字符是否依旧是左括号,
如果不是则新增一次操作。
判断栈中是否有元素如果有元素那么弹出
如果没有元素那么新增一次操作
如果依旧是左括号
那么判断栈中是否有元素,如果有元素那么弹出
如果没有元素那么新增一次操作
同时 i++
最后判断一下栈中是否有元素,如果有的话,则要新增栈中元素个数*2的操作
参考链接
https://github.com/haoel/leetcode
https://github.com/lishaohsuai/leetCode
code
class Solution1406 {
public:
int minInsertions(string s) {
stack<char> leftBrackets;
int n = s.size();
int count = 0;
for(int i=0; i<n; i++){
if(s[i] == '('){
leftBrackets.push(s[i]);
}
int rightBracketsNum = 0;
if(s[i] == ')'){
if((i+1) < n && s[i+1] == ')'){
if(leftBrackets.size()){
leftBrackets.pop();
}else{
count++;
}
i++;
}else{
count++;
if(leftBrackets.size()){
leftBrackets.pop();
}else{
count++;
}
}
}
}
count += leftBrackets.size() * 2;
return count;
}
};
leetcode 1541的更多相关文章
- leetcode 1541. 平衡括号字符串的最少插入次数
问题描述 给你一个括号字符串 s ,它只包含字符 '(' 和 ')' .一个括号字符串被称为平衡的当它满足: 任何左括号 '(' 必须对应两个连续的右括号 '))' . 左括号 '(' 必须在对应的连 ...
- leetcode刷题目录
leetcode刷题目录 1. 两数之和 2. 两数相加 3. 无重复字符的最长子串 4. 寻找两个有序数组的中位数 5. 最长回文子串 6. Z 字形变换 7. 整数反转 8. 字符串转换整数 (a ...
- 我为什么要写LeetCode的博客?
# 增强学习成果 有一个研究成果,在学习中传授他人知识和讨论是最高效的做法,而看书则是最低效的做法(具体研究成果没找到地址).我写LeetCode博客主要目的是增强学习成果.当然,我也想出名,然而不知 ...
- LeetCode All in One 题目讲解汇总(持续更新中...)
终于将LeetCode的免费题刷完了,真是漫长的第一遍啊,估计很多题都忘的差不多了,这次开个题目汇总贴,并附上每道题目的解题连接,方便之后查阅吧~ 477 Total Hamming Distance ...
- [LeetCode] Longest Substring with At Least K Repeating Characters 至少有K个重复字符的最长子字符串
Find the length of the longest substring T of a given string (consists of lowercase letters only) su ...
- Leetcode 笔记 113 - Path Sum II
题目链接:Path Sum II | LeetCode OJ Given a binary tree and a sum, find all root-to-leaf paths where each ...
- Leetcode 笔记 112 - Path Sum
题目链接:Path Sum | LeetCode OJ Given a binary tree and a sum, determine if the tree has a root-to-leaf ...
- Leetcode 笔记 110 - Balanced Binary Tree
题目链接:Balanced Binary Tree | LeetCode OJ Given a binary tree, determine if it is height-balanced. For ...
- Leetcode 笔记 100 - Same Tree
题目链接:Same Tree | LeetCode OJ Given two binary trees, write a function to check if they are equal or ...
- Leetcode 笔记 99 - Recover Binary Search Tree
题目链接:Recover Binary Search Tree | LeetCode OJ Two elements of a binary search tree (BST) are swapped ...
随机推荐
- Eclipse java项目转Maven项目
1.右键项目->configure->选择maven->配置maven的pom.xml 2.在src/main下新建java文件,将原来src下的java文件夹拷贝至该目录下: 3. ...
- eolinker响应预处理/规则校验:js正则写法注意事项
JS的正则表达式的写法,需要对原有正则表达式进行适当加工才可正常使用 如:(正则表达式规则取到"/did1280064/Login") 常规的正则表达式为"did(\d+ ...
- 智能语音备忘录:SpeechRecognition与gTTS的奇妙融合
引言:智能语音备忘录的时代已经到来 在这个信息爆炸的时代,我们每天需要处理大量的事务和信息.传统的文字记录方式虽然可靠,但在效率上往往难以满足快节奏生活的需求.想象一下,如果你能在驾车.散步或是灵感突 ...
- 17.8K star!完美超越宝塔的产品,像呼吸一样部署应用,这款开源神器绝了!
嗨,大家好,我是小华同学,关注我们获得"最新.最全.最优质"开源项目和高效工作学习方法 Dokploy是一个强大的开源平台,旨在简化全栈 Web 应用的开发和部署.通过其直观的界面 ...
- 百图生科:基于 JuiceFS 构建生命科学大模型存储平台,成本降 90%
百图生科(BioMap)由百度创始人李彦宏先生联合创立,专注于生命科学领域的人工智能技术.公司推出了全球最大的生命科学 AI 基础模型 xTrimo V3,拥有 2100 亿参数,覆盖蛋白质.DNA. ...
- 深度解析大厂vue 高频面试题(附答案)
@charset "UTF-8"; .markdown-body { line-height: 1.75; font-weight: 400; font-size: 15px; o ...
- WindowsPE文件格式入门01.PE头
https://www.bpsend.net/thread-288-1-2.html portable excute 可移植,可执行的文件(exe dll) 能够解析的文件,其内部都是有格式的,不是 ...
- odoo面试问题总结
基础问题: Model和TransientModel区别是什么?什么场景下应该使用TransientModel? 字段的compute属性是用来做什么的?如何将包含compute属性的字段的值存储到数 ...
- oracle的递归写法:地区层级
前言 mysql的递归看我另一篇博文:https://www.cnblogs.com/daen/p/17252369.html 表结构 数据 查询子节点 示例 SELECT cx1.* FROM PH ...
- 记一次SSD性能瓶颈排查之路——寿命与性能之间的取舍
1. 背景 我就职于一家轨道交通行业公司,负责的产品之一是日志记录板卡配套软件.有一天接到了现场报告,记录软件出现通信异常,将日志数据拉回来以后,发现出现异常时,CPU使用率接近100%,记录相关软 ...