有效的括號 給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。html
有效字符串需知足:sql
左括號必須用相同類型的右括號閉合。 左括號必須以正確的順序閉合。 注意空字符串可被認爲是有效字符串。bash
示例 1:ui
輸入: "()" 輸出: true 示例 2:spa
輸入: "()[]{}" 輸出: true 示例 3:netty
輸入: "(]" 輸出: false 示例 4:code
輸入: "([)]" 輸出: false 示例 5:cdn
輸入: "{[]}" 輸出: true 。htm
class Solution {
public boolean isValid(String str){
char[] chars = str.toCharArray();
Stack stack = new Stack();
for(char c : chars){
boolean isLeft = isLeft(c);
if(isLeft){
stack.add(c);
}else{
if (!stack.isEmpty()){
char popChar = (char)stack.pop();
if((')' == c && '(' == popChar)
|| (']' == c && '[' == popChar)
|| ('}' == c && '{' == popChar)){
continue;
}else{
return false;
}
}else{
return false;
}
}
}
if (!stack.isEmpty()){
return false;
}
return true;
}
private boolean isLeft(char c){
if('(' == c
|| '[' == c
|| '{' == c){
return true;
}
return false;
}
}
複製代碼
Getting Started Metrics: 主要講解metrics的幾種類型以及metrics的demoblog
倖存者誤差
在Java中12個常見的語法糖 : link.