20 有效的括號 力扣

2021-10-19 08:27:16 字數 698 閱讀 9674

題意理解

給出(){}三種括號字串,判斷是否有效,兩兩配對成功。

問題分析

用棧,思路整理:

1. 考慮兩個方向的處理,乙個入棧如何操作,乙個出棧如何操作。

2. 考慮用map做字典,減少複雜if-else處理。

其他 鏈結

原始解法:

class solution 

else if (a == ')')

else

}else if (a == '}')

else

}else if (a == ']')

else }}

if (my_stack.top() != '#')

return res;

}};

class solution 

stackmy_stack;

my_stack.push('#'); //棧底預設值,減少空判斷

unordered_mapmy_map = ,

,','

}; //定義乙個字典

for (char a : s)

else

}else

}if (my_stack.top() != '#')

return true;

}};

力扣 20 有效的括號

題目 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例1 輸入 輸出 true 示例2 輸入 輸出 true 示例3 輸入 輸出 false 示例4 輸入 輸出 false 示例5 輸入 輸出 ...

力扣 20 有效的括號

給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false 示例 5 輸入 輸...

有效的括號(力扣 20)

給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false 示例 5 輸入 輸...