zoukankan      html  css  js  c++  java
  • Java实现LeetCode_0020_ValidParentheses

    package javaLeetCode.primary;
    
    import java.util.Scanner;
    import java.util.Stack;
    
    public class ValidParentheses_20 {
    	public static void main(String[] args) {
    		@SuppressWarnings("resource")
    		Scanner input = new Scanner(System.in);
    		System.out.println("Please input a string:");
    		String s = input.next();
    		System.out.println(isValid_1(s));
    	}//end main
    	
    	/**
    	 * Use Stack.
    	 * */
    	
    	/*
    	 * Test Data:
    	 * ()--true
    	 * ()[]{}--true
    	 * {[]}--true
    	 * ((()))([{}])--true
    	 * {{(}})[(])--false
    	 * (]-- false
    	 * ([)]--false
    	 * [])--false
    	 * [--false
    	 * ([]--false
    	 * */
    public static boolean isValid_1(String s) {
    	boolean isMatch = false;
    	//There should be a procedure for handling strings.
    	if(s==null)
    		return false;
    	if(s .length()!= 0) {
    		char []cha = s.toCharArray();
    		Stack <Character>charStack = new Stack<Character>();
    		if(charStack.isEmpty()) {
    			charStack.push(cha[0]);
    			for(int i=1;i<cha.length;i++) {
    				if(cha[i]=='('||cha[i]=='['||cha[i]=='{') {
    					charStack.push(cha[i]);
    				}else if((!charStack.isEmpty())&&(cha[i]==')'&&charStack.peek()=='('||cha[i]==']'&&charStack.peek()=='['||cha[i]=='}'&&charStack.peek()=='{')){
    						charStack.pop();
    						isMatch = true;
    				}else {
    					isMatch = false;
    					break;
    				}//end if
    			}//end for
    		}//end if
    		if(!charStack.isEmpty()) {
    			isMatch = false;
    		}//end if
    	}else {
    		isMatch = true;
    	}//end if
    	return isMatch;
        }//end isValid()
    }//end ValidParentheses_20
    
    
    
  • 相关阅读:
    Moq4在.NET3.5和.NET4版本之间的差异
    TDD中的迭代
    洛谷 3413 萌数
    割点(tarjan)
    hdu-4507 吉哥系列故事——恨7不成妻
    hdu-3709 Balanced Number
    poj-3252 Round Numbers
    hdu 1007 Quoit Design 分治求最近点对
    LA 3905 Meteor 扫描线
    uva 11464
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13076071.html
Copyright © 2011-2022 走看看