zoukankan      html  css  js  c++  java
  • 每日一题 为了工作 2020 0428 第五十七题

    /**
     * 【问题】
     *        括号字符串的有效性
     *        给定一个字符串str, 判断是不是整体有效的括号字符串。
     * 【举例】
     *        str="()", 返回true;
     *        str="(()())", 返回true;
     *        st1="(())", 返回true。
     *        str="())",返回false;
     *        str="()(", 返回false;
     *        str="()a()"' 返回false。
     * 【解答】
     * l. 从左到右遍历字符串str, 判断每一个字符是不是"("或")",如果不是,就直接返回false。
     * 2. 遍历到每一个字符时,都检查到目前为止"("和")"的数量, 如果")"更多,则直接返回false。
     * 3. 遍历后检查"("和")"的数量, 如果一样多, 则返回true, 否则返回false。
     *
     * @author 雪瞳
     * @Slogan 时钟尚且前行,人怎能再此止步!
     * @Function
     *
     */
    

      

    public class IsValid {
        public static boolean isValid(String string){
            if ("".equals(string)||string == null){
                return false;
            }
            char[] words = string.toCharArray();
            int left = 0;
            int right = 0;
            for (int i = 0; i!=string.length();i++){
                if (!"(".equals(words[i]) || !")".equals(words[i])){
                    return false;
                }
                if ("(".equals(words[i])){
                    left++;
                }
                if (")".equals(words[i])){
                    right++;
                }
                if (left<right){
                    return false;
                }
            }
            if (left == right){
                return true;
            }
            return false;
        }
    
        public static void main(String[] args) {
            String string = "(()a())";
            String string2  = "))((";
            boolean valid = isValid(string2);
            if (valid){
                System.out.println("yes");
            }else {
                System.err.println("no");
            }
        }
    }
    

      

  • 相关阅读:
    使用json-lib进行Java和JSON之间的转换
    ajax+json+java
    了解Json
    Ehcache RIM
    利用FreeMarker静态化网页
    Timer和TimerTask
    windows下memcache安装
    mac下安装YII
    php static 和self区别
    YII behaviors使用
  • 原文地址:https://www.cnblogs.com/walxt/p/12793251.html
Copyright © 2011-2022 走看看