题解 | #有效括号序列#2023 /12/06风风轻轻吹

有效括号序列

https://www.nowcoder.com/practice/37548e94a270412c8b9fb85643c8ccc2

bool isValid(char* s) {
    int len = strlen(s);
    char stack[len]; // 使用字符数组模拟栈
    int top = -1; // 栈顶指针

    for (int i = 0; i < len; i++) {
        if (s[i] == '(' || s[i] == '[' || s[i] == '{') {
            stack[++top] = s[i]; // 左括号入栈
        } else if (s[i] == ')' && top >= 0 && stack[top] == '(') {
            top--; // 匹配右括号,栈顶左括号出栈
        } else if (s[i] == ']' && top >= 0 && stack[top] == '[') {
            top--; // 匹配右括号,栈顶左括号出栈
        } else if (s[i] == '}' && top >= 0 && stack[top] == '{') {
            top--; // 匹配右括号,栈顶左括号出栈
        } else {
            return false; // 其他情况不匹配
        }
    }

    return top == -1; // 栈为空说明所有括号都匹配
}

全部评论

相关推荐

可以不说话:笔试a了3道半,今天说是挂了😭😭
投递汇丰科技等公司8个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务