题目:有效的括号序列
来源:互联网 发布:手游数据 编辑:程序博客网 时间:2024/06/05 10:25
给定一个字符串所表示的括号序列,包含以下字符: '(', ')'
, '{'
, '}'
,'['
and ']'
, 判定是否是有效的括号序列。
括号必须依照 "()"
顺序表示, "()[]{}"
是有效的括号,但 "([)]"
则是无效的括号。
O(n)的时间,n为括号的个数
相关题目 Expand
利用栈的特点。
/**
* @param s A string
* @return whether the string is a valid parentheses
*/
public boolean isValidParentheses(String s) {
// Write your code here
Stack<Character> stack = new Stack<>();
if (0 == s.length() || null == s)
return true;
if (1 == s.length())
return false;
boolean flag = true;
for (int i = 0; i < s.length(); i++) {
if (stack.isEmpty()) {
stack.push(s.charAt(i));
} else if (stack.peek() == '(' && s.charAt(i) == ')') {
stack.pop();
} else if (stack.peek() == '[' && s.charAt(i) == ']') {
stack.pop();
} else if (stack.peek() == '{' && s.charAt(i) == '}') {
stack.pop();
} else {
stack.push(s.charAt(i));
}
}
if (stack.isEmpty()) {
flag = true;
} else {
flag = false;
}
return flag;
}
}
- 题目:有效的括号序列
- 有效的括号序列
- 有效的括号序列
- 有效的括号序列
- 有效的括号序列
- 有效的括号序列
- 有效的括号序列
- 有效的括号序列
- 有效的括号序列
- 有效的括号序列
- lintcode 有效的括号序列
- LintCode_有效的括号序列
- lintcode ----有效的括号序列
- LintCode:有效的括号序列
- 有效的括号序列,lintcode
- lintcode--有效的括号序列
- 有效的括号序列判断
- Lintcode 有效的括号序列
- UVA 562 - Dividing coins
- android 处理图片之--bitmap处理
- 【SPFA】
- 10个经典的 Java main 方法面试题
- Unity 3D中的内存管理
- 题目:有效的括号序列
- c++深拷贝和浅拷贝
- 利用jquery使对象在页面做曲线运动
- arm平台tslib的编译与qte源代码包配置中的-qt-mouse-tslib
- SpringMVC——接收请求参数和页面传参
- jquery的几个重要的对象关系逻辑
- java的垃圾回收
- MySQL时间戳格式化函数FROM_UNIXTIME介绍
- 题目:比较字符串