給定乙個只包括 『(』,』)』,』』,』[』,』]』 的字串,判斷字串是否有效。
有效字串需滿足:
左括號必須用相同型別的右括號閉合。
左括號必須以正確的順序閉合。
注意空字串可被認為是有效字串。
示例 1
:輸入:
"()"
輸出:true
示例 2
:輸入:
"(){}"
輸出:true
示例 3
:輸入:
"(]"
輸出:false
示例 4
:輸入:
"([)]"
輸出:false
示例 5
:輸入:
""輸出:
true
用了倆堆疊倒來倒去,遇到相對應的符號就消掉,為了解決相對應的符號這個問題,還用了乙個unordered_map容器,其實不難,刷起來蠻舒服。(今晚遇到了個小幸運星啊哈哈哈哈,加油加油!!!)
class
solution';
int n = s.
size()
;for
(int i=
0;i) b.
push
(s[i]);
c.push
(b.top()
);b.
pop();
while
(!b.
empty()
)if(c.empty()
)return
true
;else
return
false;}
};
20 有效的括號 C
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false 示例 5 輸入 輸...
20 有效的括號 c
寫在前面,小白從零刷題,在解答會寫出思路,正確答案,以及所有使用到的語法和知識點 將所有指定的括號放在乙個unorderd map中去,制定好對應的key value。然後為true的情況就是能把內部的括號依次對應刪除,那麼就是有效的括號。為false的情況就是括號內部不對應,或者括號左右不匹配 c...
20 有效括號
1.題目描述 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。2.示例 輸入 輸出 true輸入 輸出 false3.思路 可以採用棧來解決,第一步 判斷棧是否空,為空則進乙個括號,若不為空,則判斷當前括號和棧頂元素是否匹配,不...