5.1 Brackets

来源:互联网 发布:网络机顶盒哪个好用 编辑:程序博客网 时间:2024/06/06 14:11

(),[],{}配对的问题,使用stack的经典案例,不多说了。
强烈吐槽java泛型就是一坨屎。我又想换C#了,单就语言来说C#明显比java友好多了,后发优势吧。前浪都死在沙滩上了。最近的趋势是函数式编程语言。JS,D语言都有浓重的函数式味道

class Solution {    public int solution(String S) {        // write your code in Java SE 8        char[] stack = new char[S.length()+1];        int top = 0;        for(int i=0; i<S.length(); i++){            char c = S.charAt(i);            switch(c){                case '(':                case '[':                case '{':                     stack[++top] = c;                     break;                case ')':                     if(top==0 || stack[top--] != '('){                         return 0;                     }                     break;                case ']':                     if(top==0 || stack[top--] != '['){                         return 0;                     }                     break;                case '}':                     if(top==0 || stack[top--] != '{'){                         return 0;                     }                     break;                default:                     break;            }        }        if(top==0) return 1;        else return 0;    }}
0 0