leetcode
注销第2.7课“准备面试”的作业
堆栈是一种抽象数据类型,它是根据LIFO原则(英文后进先出,“后进先出”)组织的元素列表。
大多数情况下,将堆叠的操作原理与一叠盘子进行比较:为了从顶部取出第二个,您需要移除顶部的一个。
或者在枪械中使用弹匣(射击将从最后装入的弹药筒开始)。
您需要使用以下方法实现
Stack
类:
isEmpty
-
检查堆栈是否为空。
该方法返回
True
或
False。
push
-
向堆栈顶部添加一个新项目。
该方法不返回任何内容。
pop
-
移除栈顶元素。
堆栈发生变化。
该方法返回栈顶元素
peek
-
返回堆栈的顶部元素,但不删除它。
堆栈不会改变。
size
-
返回堆栈中元素的数量。
使用任务1的栈,需要解决括号平衡的问题。
平衡括号意味着每个开始字符都有一个匹配的结束字符,并且括号对正确嵌套。
以下括号将是平衡序列:
(((([{}]))))
[([])((([[[]]])))]{()}
{{[()]}}不平衡序列:
}{}
{{[(])]}}
[[{())}]
该程序需要一个带括号的字符串作为输入。
在出口处,如果线路正确,
2021-07-07 12:03:21
4KB
系统开源
1