leetcode---Valid Parentheses
2016-06-21 10:32
405 查看
Given a string containing just the characters ‘(‘, ‘)’, ‘{‘, ‘}’, ‘[’ and ‘]’, determine if the input string is valid.
The brackets must close in the correct order, “()” and “()[]{}” are all valid but “(]” and “([)]” are not.
解题思路:使用一个栈临时存储,这样就可以比较相邻的元素。
The brackets must close in the correct order, “()” and “()[]{}” are all valid but “(]” and “([)]” are not.
解题思路:使用一个栈临时存储,这样就可以比较相邻的元素。
package stringTest; import java.util.Stack; public class isValiad { public static boolean isValid(String s) { if (s.length() == 0 || s.equals("")) return false; char[] c = s.toCharArray(); if (c.length == 1) return false; int n = s.length(); Stack<Character> sta = new Stack<Character>(); for (int i = 0; i < n; i++) { if (sta.isEmpty()) { sta.push(c[i]); } else { if ((c[i] == ')' && sta.peek() == '(') || (c[i] == '}' && sta.peek() == '{') || (c[i] == ']' && sta.peek() == '[')) { sta.pop(); continue; } else { sta.push(c[i]); } } } return sta.isEmpty(); } public static void main(String[] args) { String s = "[]()"; System.out.print(isValid(s)); } }
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- android string.xml文件中的整型和string型代替
- Android java 与 javascript互访(相互调用)的方法例子
- android上改变listView的选中颜色
- String.intern
- Prototype源码浅析 String部分(二)
- Ruby中的String对象学习笔记
- PostgreSQL ERROR: invalid escape string 解决办法
- 浅谈C++中的string 类型占几个字节
- 标准C++类string的Copy-On-Write技术
- C++实现string存取二进制数据的方法
- C#中string和StingBuilder内存中的区别实例分析
- 详解C++中实现继承string类的MyString类的步骤
- PHP STRING 陷阱原理说明
- c#中 String和string的区别介绍
- C#实现的图片、string相互转换类分享
- asp.net String.IsNullOrEmpty 方法
- JavaScript中字符串(string)转json的2种方法
- C#中string用法实例详解
- 浅析C#中StringBuilder类的高效及与String的对比