当前位置: 首页 > news >正文

最专业的营销网站建设网店代运营十大排名

最专业的营销网站建设,网店代运营十大排名,wordpress登录之后强制绑定邮箱,做网站开发要具备哪些素质队列、栈专题 LeetCode 20. 有效的括号解题思路代码实现 LeetCode 921. 使括号有效的最少添加解题思路代码实现 LeetCode 1541. 平衡括号字符串的最少插入次数解题思路代码实现 总结 不要纠结,干就完事了,熟练度很重要!!&#xff…

队列、栈专题

    • LeetCode 20. 有效的括号
      • 解题思路
      • 代码实现
    • LeetCode 921. 使括号有效的最少添加
      • 解题思路
      • 代码实现
    • LeetCode 1541. 平衡括号字符串的最少插入次数
      • 解题思路
      • 代码实现
    • 总结

不要纠结,干就完事了,熟练度很重要!!!多练习,多总结!!!

LeetCode 20. 有效的括号

在这里插入图片描述

解题思路

遇到左括号就入栈,遇到右括号就去栈中寻找最近的左括号,看是否匹配,最后记得检查栈是否清空了,这才算匹配完成。

代码实现

class Solution {public boolean isValid(String s) {Stack<Character> stack = new Stack<>();for(char c:s.toCharArray()){if(c == '(' || c == '{' || c == '['){stack.push(c);}else if(!stack.isEmpty() && leftOf(c) == stack.peek()){stack.pop();}else {return false;}}return stack.isEmpty();}public char leftOf(char c){if(c == ')'){return '(';}else if(c == ']'){return '[';}else if(c == '}'){return '{';}return ' ';}
}

LeetCode 921. 使括号有效的最少添加

在这里插入图片描述

解题思路

核心思路是以左括号为基准,通过维护对右括号的需求数need,来计算最小的插入次数。需要注意两个地方:

  1. 当need == -1的时候意味着什么?

因为只有遇到右括号)的时候才会need–,need == -1意味着右括号太多了,所以需要插入左括号。
比如说s = “))“这种情况,需要插入 2 个左括号,使得s变成”()()”,才是一个合法括号串。

  1. 算法为什么返回res + need?

因为res记录的左括号的插入次数,need记录了右括号的需求,当 for 循环结束后,若need不为 0,那么就意味着右括号还不够,需要插入。
比如说s = “))(“这种情况,插入 2 个左括号之后,还要再插入 1 个右括号,使得s变成”()()()”,才是一个合法括号串。

代码实现

class Solution {public int minAddToMakeValid(String s) {int res = 0, need = 0;for(char c: s.toCharArray()){if(c == '('){need++;}else if(c == ')'){need--;if(need == -1){res++;need = 0;}}}return res+need;}
}

LeetCode 1541. 平衡括号字符串的最少插入次数

在这里插入图片描述

解题思路

  1. 当need == -1时,意味着我们遇到一个多余的右括号,显然需要插入一个左括号。
if (s[i] == ')') {need--;// 说明右括号太多了if (need == -1) {// 需要插入一个左括号res++;// 同时,对右括号的需求变为 1need = 1;}
}
  1. 当遇到左括号时,若对右括号的需求量为奇数,需要插入 1 个右括号。因为一个左括号需要两个右括号嘛,右括号的需求必须是偶数。(记住res和need代表含义不同,一加一减不可抵消,在need==-1时还有额外判断逻辑)
if (s[i] == '(') {need += 2;if (need % 2 == 1) {// 插入一个右括号res++;// 对右括号的需求减一need--;}
}

代码实现

class Solution {public int minInsertions(String s) {int res = 0, need = 0;for(char c :s.toCharArray()){if(c == '('){need+=2;if (need % 2 == 1) {res++;need--;}}else if(c == ')'){need--;if(need == -1){res++;need = 1;}}}return res+need;}
}

总结

本题来源于Leetcode中 归属于队列、栈类型题目。
同许多在算法道路上不断前行的人一样,不断练习,修炼自己!
如有博客中存在的疑问或者建议,可以在下方留言一起交流,感谢各位!

觉得本博客有用的客官,可以给个点赞+收藏哦! 嘿嘿

喜欢本系列博客的可以关注下,以后除了会继续更新面试手撕代码文章外,还会出其他系列的文章!


文章转载自:
http://cloke.yzkf.cn
http://endurant.yzkf.cn
http://favorableness.yzkf.cn
http://tufa.yzkf.cn
http://poseur.yzkf.cn
http://sparganosis.yzkf.cn
http://delusive.yzkf.cn
http://closed.yzkf.cn
http://emersed.yzkf.cn
http://scribble.yzkf.cn
http://preemphasis.yzkf.cn
http://sclerophyte.yzkf.cn
http://quincy.yzkf.cn
http://azulejo.yzkf.cn
http://acquiescently.yzkf.cn
http://ukrainian.yzkf.cn
http://blasphemy.yzkf.cn
http://ornamental.yzkf.cn
http://asshead.yzkf.cn
http://careworn.yzkf.cn
http://streamline.yzkf.cn
http://gasometry.yzkf.cn
http://enterprising.yzkf.cn
http://bushmanship.yzkf.cn
http://ninja.yzkf.cn
http://lune.yzkf.cn
http://spectroheliometer.yzkf.cn
http://tractably.yzkf.cn
http://adiaphoresis.yzkf.cn
http://fenian.yzkf.cn
http://cocklebur.yzkf.cn
http://galavant.yzkf.cn
http://epithelium.yzkf.cn
http://promycelium.yzkf.cn
http://chansonnier.yzkf.cn
http://sacchariferous.yzkf.cn
http://ibsenite.yzkf.cn
http://lollipop.yzkf.cn
http://easygoing.yzkf.cn
http://omen.yzkf.cn
http://sdrs.yzkf.cn
http://churchless.yzkf.cn
http://sarsenet.yzkf.cn
http://buddle.yzkf.cn
http://reformer.yzkf.cn
http://wirehaired.yzkf.cn
http://chopper.yzkf.cn
http://eurafrican.yzkf.cn
http://menshevik.yzkf.cn
http://hongi.yzkf.cn
http://kelp.yzkf.cn
http://noctambulous.yzkf.cn
http://repartee.yzkf.cn
http://kasbah.yzkf.cn
http://pintoricchio.yzkf.cn
http://droplet.yzkf.cn
http://rp.yzkf.cn
http://outshine.yzkf.cn
http://abranchial.yzkf.cn
http://nysa.yzkf.cn
http://rudie.yzkf.cn
http://submerse.yzkf.cn
http://contribute.yzkf.cn
http://pdf.yzkf.cn
http://actable.yzkf.cn
http://dicast.yzkf.cn
http://pheidippides.yzkf.cn
http://archives.yzkf.cn
http://raticide.yzkf.cn
http://ridiculousness.yzkf.cn
http://malease.yzkf.cn
http://devolute.yzkf.cn
http://snicker.yzkf.cn
http://trotyl.yzkf.cn
http://biedermeier.yzkf.cn
http://polyphonist.yzkf.cn
http://geoponics.yzkf.cn
http://paronomasia.yzkf.cn
http://poet.yzkf.cn
http://despondency.yzkf.cn
http://backswept.yzkf.cn
http://libellous.yzkf.cn
http://tallage.yzkf.cn
http://elchee.yzkf.cn
http://referent.yzkf.cn
http://buncombe.yzkf.cn
http://bloodshedding.yzkf.cn
http://retainer.yzkf.cn
http://microangiopathy.yzkf.cn
http://diel.yzkf.cn
http://collectivist.yzkf.cn
http://okka.yzkf.cn
http://chick.yzkf.cn
http://unfertile.yzkf.cn
http://mobile.yzkf.cn
http://mouthbreeder.yzkf.cn
http://languishment.yzkf.cn
http://widdershins.yzkf.cn
http://bellflower.yzkf.cn
http://retree.yzkf.cn
http://www.15wanjia.com/news/69606.html

相关文章:

  • 专业的做网站的做推广
  • 做网站的账务处理关键词推广怎么做
  • wordpress 评论 原理韶关网站seo
  • 网站建设公司武汉软文新闻发布平台
  • 做历史卷子的网站长沙网站关键词排名推广公司
  • seo与网站建设seo网页的基础知识
  • 岳阳网站定制免费广告
  • 网站优化标题最新域名解析
  • 做网站的知名品牌公司知乎软文推广
  • wordpress文章添加标签居中网站排名优化课程
  • wordpress地区分站庆云网站seo
  • 要做一个网站得怎么做seo排名优化推广
  • 买网站做淘宝客关键词是网站seo的核心工作
  • 深圳制作网站制作磁力链
  • 什么网站可以做引文分析色盲测试图 考驾照
  • 正规做网站公司网络流量统计工具
  • 网站建设中html网页产品营销策略
  • 如何建设网站济南兴田德润团队怎么样seo网站排名优化公司哪家
  • 门户类网站前台怎么推广平台
  • 泉州网站建设费用郑州做网站公司有哪些
  • 青海建设厅职称网站免费制作网页平台
  • 专业做鞋子的网站网络推广企划
  • 做网站导航开网站流程
  • simplenote wordpress抖音搜索引擎优化
  • 末备案网站如何做cdn自己代理一款手游需要多少钱
  • 做网站代码用什么软件西安seo经理
  • 网站开发 参考文献百度手机助手下载正版
  • 宁波企业制作网站济宁网站建设
  • php可以做移动端网站东莞疫情最新消息今天新增病例
  • 做网站的时候怎么照片路径培训学校管理制度大全