LeetCode每日一题,20. Valid Parentheses
先看题目描述
大意就是让我们给定一个只包含括号的字符串,让我们判断是不是有效的括号
算法和思路
这题很简单,用一个栈就可以,当是左括号时就进栈,是右括号时就将栈顶元素出栈,若能匹配则继续遍历字符串,若不能匹配则直接返回 false,最终遍历完时根据栈是否为空,来返回 true 或 false
算法源码
1 | import java.util.*; |
后来去看题解,发现可以不使用哈希表来进一步优化时间效率和空间效率,下面是代码
1 | import java.util.*; |
最后去看击败100%的范例,发现别人是用了一个数组来代替栈的作用,第一次见到这种操作,下面是代码
1 | class Solution { |