正确格式: ( [ ] ( ) ) 或 [ ( [ ] ) ]
不正确格式[ ( ] ) 或 ( [ ( ) )
最后出现的左括号最先被相应的右括号匹配
- 遇到左括号入栈
- 遇到右括号就出栈一个相应的左括号(这个右括号应该与距离最近的左括号相匹配)
匹配失败情况:
- 左括号单身
- 右括号单身
- 左右括号不匹配
流程图
括号匹配成功过程
括号匹配失败,右括号与栈顶的左括号不匹配
括号匹配失败,有单身的右括号还未匹配成功,但是栈已经空栈
正确格式: ( [ ] ( ) ) 或 [ ( [ ] ) ]
不正确格式[ ( ] ) 或 ( [ ( ) )
最后出现的左括号最先被相应的右括号匹配
- 遇到左括号入栈
- 遇到右括号就出栈一个相应的左括号(这个右括号应该与距离最近的左括号相匹配)
匹配失败情况:
- 左括号单身
- 右括号单身
- 左右括号不匹配
括号匹配成功过程
括号匹配失败,右括号与栈顶的左括号不匹配
括号匹配失败,有单身的右括号还未匹配成功,但是栈已经空栈