20. 有效的括号
知识点
#include <unordered_map> unordered_map<int,int> Hash = { {')', '('}, {']', '['}, {'}', '{'} };
用来生成哈希表
标准解法
class Solution { public: bool isValid(string s) { int n = s.size(); if (n % 2 == 1) { return false; } unordered_map<char, char> pairs = { {')', '('}, {']', '['}, {'}', '{'} }; stack<char> stk; for (char ch: s) { if (pairs.count(ch)) { if (stk.empty() || stk.top() != pairs[ch]) { return false; } stk.pop(); } else { stk.push(ch); } } return stk.empty(); } };