iT邦幫忙

2025 iThome 鐵人賽

DAY 6
0
生成式 AI

Chatting with ChatGPT——一天學習一題Leetcode系列 第 6

Day6-LeetCode 20. Valid Parentheses

  • 分享至 

  • xImage
  •  

今天早起上班好累,但還是要堅持每日一題!
今日LeetCode題目大意: 給一個只包含 '(', ')', '{', '}', '[', ']' 的字串,判斷它是不是「有效括號」。

規則:
左括號必須以正確順序,由相同類型的右括號關閉

範例:
"()" → true
"()[]{}" → true
"(]" → false
"([)]" → false
"{[]}" → true

class Solution {
    public boolean isValid(String s) {
        Stack<Character> stack = new Stack<>(); **//建立一個 堆疊 (Stack) 來暫存括號**
        
        for (char c : s.toCharArray()) {
            if (c == '(') {
                stack.push(')'); **//如果遇到左括號 (,就把它對應的 右括號 ) 放進堆疊**
            } else if (c == '{') {
                stack.push('}');
            } else if (c == '[') {
                stack.push(']');
            } else {
                if (stack.isEmpty() || stack.pop() != c) {
                    return false;
                }
            }
        }
        
        return stack.isEmpty();
    }
}

上一篇
美好星期五-14. Longest Common Prefix
下一篇
禮拜日-Remove Duplicates from Sorted Array
系列文
Chatting with ChatGPT——一天學習一題Leetcode9
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言