【每日一题】LeetCode 20. 有效的括号 TypeScript

CodeTop 面试题目总结

给定一个只包括 '('')''{''}''['']' 的字符串 s ,判断字符串是否有效。

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。
  3. 每个右括号都有一个对应的相同类型的左括号。

示例 1:

**输入:**s = "()"

**输出:**true

示例 2:

**输入:**s = "()\[\]{}"

**输出:**true

示例 3:

**输入:**s = "(]"

**输出:**false

示例 4:

**输入:**s = "(\[\])"

**输出:**true

示例 5:

**输入:**s = "()"

**输出:**false

提示:

  • 1 <= s.length <= 104
  • s 仅由括号 '()[]{}' 组成

TypeScript 复制代码
function isValid(s: string): boolean {
    if(s.length % 2 !=0) return false
    const track:string[] = []

    for(const i of s){
        if(i==="("){
            track.push(")")
        }else if(i==="["){
            track.push("]")
        }else if(i==="{"){
            track.push("}")
        }else{
            if(track.pop()!==i){
                return false
            }
        }
    }
    return track.length===0
};

共勉

相关推荐
203号居民2 小时前
LeetCode hot 100 —560. 和为 K 的子数组
java·算法·leetcode
文心快码BaiduComate3 小时前
光本位联合文心快码打造面向光电芯片研发的全栈AI Agent Lightmate
算法
一次旅行3 小时前
ViT/CLIP/LLaVA/GPT-4V/VideoLLM多模态架构全解:原理仿真+工业落地选型+完整推理代码
人工智能·算法·架构
神明不懂浪漫3 小时前
【第五章】队列
开发语言·数据结构·经验分享·笔记·算法
happy_baymax3 小时前
MATLAB MCP Server+ MATLAB Agentic Toolkit+Simulink Agentic Toolkit自动更新批处理文件.ps1
人工智能·算法
晓说前端4 小时前
TypeScript 核心语法应用 —— Vue 3 中的使用(上)
前端·typescript
神明不懂浪漫4 小时前
【第六章】二叉树
开发语言·数据结构·经验分享·笔记·算法
城管不管4 小时前
第八次面试2026.8.10
面试·职场和发展