括号匹配问题
来源:互联网 发布:linux内核源代码 编辑:程序博客网 时间:2024/06/05 02:43
给出一个字符串 然后判断字符串里面括号是否匹配
思路:
遍历一个字符串
1 如果是'('或者'[' 压入栈,
2 如果是 ’ ) ’ ,看看栈顶的元素是不是'(',如果是,则出栈,不是则返回false
3 如果是']'看看栈顶的元素是不是']',如果是,则出栈,不是则返回false
4 判断 栈是否是空的,如果是则返回true,不是则返回false
php 代码如下:需要用数组函数模拟栈
function match($str){ $str = str_replace(' ', '', $str);// 把空格删除 $str = str_split($str);//字符串转成数组 var_dump($str); $stack = array(); foreach ($str as $k => $v) { if ($v == '(' || $v == '[') { array_push($stack, $v); } if ($v == ')') { if (end($stack) == '(') array_pop($stack); else return false; } if ($v == ']') { if (end($stack) == '[') array_pop($stack); else return false; } } if (count($stack) == 0) { return true; else return false;}$str = '(((( [])[[东asa安定飞sdf]]))) [] ( ) ';$res=match($str);var_dump($res);
0 0
- 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 括号的匹配问题
- 括号匹配问题
- 括号匹配问题
- [栈] 括号匹配问题
- NY : 括号匹配问题
- 括号匹配问题
- Java 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 括号匹配问题
- 顶部navigationbar设置为透明
- SharePoint2010 IT Professional - 版本查询
- Dungeon Master(bfs)
- 日经春秋 20160324
- JAVA程序元素在内存中的分配
- 括号匹配问题
- ListView 的单选模式
- C语言单向链表的建立
- 内存泄露问题排查技巧(无米之炊)
- Java类加载机制实例分析
- Array 常用函数
- Bash的基本功能
- iOS ipa打包测试文件生成二维码
- NULL、0与nullptr