Java 括号匹配验证算法 - 使用栈数据结构
这段代码是一个用于判断括号序列是否有效的 Java 程序。它使用了栈的数据结构来实现判断。
代码的主要逻辑如下:
- 从用户输入中读取一个整数 n,表示括号序列的长度。
- 从用户输入中读取一个字符串 input,表示括号序列。
- 调用
isValidParentheses方法,传入括号序列的长度和字符串。 - 在
isValidParentheses方法中,创建一个栈stack,用来存储左括号。 - 遍历括号序列的每个字符:
- 如果当前字符是左括号
'(',则将其压入栈中。 - 如果当前字符是右括号
')',则检查栈是否为空或栈顶元素不是左括号'(',若是则返回 false,并从栈中弹出左括号。
- 如果当前字符是左括号
- 遍历结束后,如果栈为空,则返回 true,否则返回 false。
这段代码可以判断给定括号序列是否有效,如果有效则输出 'Yes',否则输出 'No'。
请注意,在使用这段代码之前,需要先确保输入的括号序列符合要求,并且没有其他非括号字符。
原文地址: https://www.cveoy.top/t/topic/bPIK 著作权归作者所有。请勿转载和采集!