codewars
Code Kata
Valid Braces
這一題
在我高中磨練邏輯期間有出現過
當時還不知道什麼是"堆疊"
當時用VB寫的解
現在回去看看真的有夠笨
雖然現在還是笨
題目連結
---------------------------------
function validBraces(braces){
var L = '({[';
var R = ')}]';
var ans= true;
var arrayStacks = '' ;
for (var i = 0 ;i<braces.length ;i++){
if (L.indexOf(braces[i])!=-1){
arrayStacks += braces[i];
}
else{
if ((R.indexOf(braces[i])!=-1)){//遇到不是括弧直接略過
if( (arrayStacks[arrayStacks.length-1]==L[R.indexOf(braces[i])]) && arrayStacks.length>0 ){
arrayStacks = arrayStacks.slice(0,arrayStacks.length-1);
}
else{
return false;
}
}
}
}
if(arrayStacks.length==0){
return true;
}
else{
return false;
}
}
---------------------------------