31.括号序列

31.括号序列

题目描述

给出一个仅包含字符’(’,’)’,’{’,’}’,’[‘和’]’,的字符串,判断给出的字符串是否是合法的括号序列
括号必须以正确的顺序关闭,"()“和”()[]{}“都是合法的括号序列,但”(]“和”([)]"不合法。

输入

"["

返回值

false

输入

"[]"

返回值

true

分析

1.由题意可得,括号必须是成对出现才符合

2.所以可以利用String里面的replace方法,对成对的括号进行替换

3.若替换完成,即就是所有的括号全部替换成了空格,那么此时的字符串长度为0,否则字符串长度不为0

代码实现

  import java.util.*;
    
    
    public class Solution {
     
        /**
         * 
         * @param s string字符串 
         * @return bool布尔型
         */
    public boolean isValid (String s) {
     
    		boolean flag = true;
    		while(flag) {
     
    			int len = s.length();
    			s=s.replace("()","");
    			s=s.replace("[]","");
    			s=s.replace("{}","");
    			if(len==s.length())
    				flag=false;
    		}
    		return s.length()==0;
    		
    	}
    }

你可能感兴趣的:(牛客编程习题)