首页 > 其他 > 详细

Leetcode刷题记(6)——有效的括号

时间:2019-05-07 21:44:13      阅读:167      评论:0      收藏:0      [点我收藏+]

勤劳的搬运工~

给定一个只包括 ‘(‘‘)‘‘{‘‘}‘‘[‘‘]‘ 的字符串,判断字符串是否有效。

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。

注意空字符串可被认为是有效字符串。

示例 1:

输入: "()"
输出: true

示例 2:

输入: "()[]{}"
输出: true

解题过程:
刚开始时尝试着把所有不符合规则或所有符合规则的情况罗列出来,用多个if语句进行判断,被折磨了半小时后果断放弃了,完全理不清楚,总会有一些情况没考虑到!!!
无奈没忍住偷偷的看了一眼别人的解答:用!!!数据结构真的太重要了,完全没有想起来使用数据结构。
用栈:判断如果是左半边括号,直接压入栈中;如果是右半括号,则把取出栈顶元素判断与当前元素是否匹配,匹配后弹出,不匹配直接输出false;
   最后遍历结束若都匹配,则栈为空,输出true。
知识点!!!
数据结构——栈的用法!!!

一点碎碎念:每天晚上两道题差不多要一个半小时,虽然花费的时间多,但真的基础太不牢了,以前学的没有多练习全还给学校了,希望现在开始追还不会太晚!加油!

Leetcode刷题记(6)——有效的括号

原文:https://www.cnblogs.com/wangjm63/p/10828111.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!