当前位置: 首页 > news >正文

LeetCode|Day18|20. 有效的括号|Python刷题笔记

LeetCode|Day18|20. 有效的括号|Python刷题笔记

🗓️ 本文属于【LeetCode 简单题百日计划】系列
👉 点击查看系列总目录 >>


📌 题目简介

题号:20. 有效的括号
难度:简单
题目链接:点击跳转


🧾 题目描述(简要)

判断一个字符串中的括号是否有效。括号包括 ()[]{}

  • 左右匹配;
  • 顺序也必须正确;
  • 空字符串是有效括号。

示例:

输入:s = "()[]{}"
输出:true输入:s = "(]"
输出:false

💡 解法:栈 + 字典匹配

class Solution:def isValid(self, s: str) -> bool:stack = []mapping = {')': '(', ']': '[', '}': '{'}for char in s:if char in mapping:if not stack or stack[-1] != mapping[char]:return Falsestack.pop()else:stack.append(char)return not stack

🧠 我的理解

  • 括号类题目通常用栈解决;
  • 字典 mapping 用于快速匹配对应关系;
  • 遇到右括号时判断栈顶元素是否匹配;
  • 最后栈为空说明完全匹配。

📌 基础语法复习:

  • stack.append(char):压栈;
  • stack.pop():弹出栈顶;
  • not stack:判断栈是否为空;
  • dict[char]:访问字典中对应键的值。

📌 返回总目录:点我回目录

http://www.dtcms.com/a/285397.html

相关文章:

  • 格式转换Total Excel Converter:20 种格式XLS XLSX 批量转 PDFWord
  • 饿了么app 抓包 hook
  • 【论文蒸馏】Recent Advances in Speech Language Models: A Survey
  • 怎么判断一个对象是不是vue的实例
  • 新手向:图片批量裁剪工具
  • 【IOS webview】IOS13不支持svelte 样式嵌套
  • 为什么IoTDB成为物联网场景的技术优选?
  • NAND闪存(NAND Flash)是什么?
  • rt_thread hc32f460引脚编号
  • 利用steps()分步实现奔跑的小熊案例
  • 『 C++ 入门到放弃 』- set 和 map 容器
  • 【机器学习深度学习】什么是 GGUF?
  • 【QT】调用外部dll
  • QT窗口(4)-浮动窗口
  • Qt窗口(2)-工具栏
  • 【嵌入式硬件实例】-555定时器实现LED追逐效果
  • Python的界面美化库 qt-material
  • 【机器学习】安装Jupyter及基本操作
  • Android如何使用Linux Quota管控app对userdata分区的磁盘空间使用
  • QT聊天项目DAY15
  • 数据结构入门:像整理收纳一样简单!
  • 【git仓库搭建笔记】
  • 二、Dify 版本升级教程(LInux-openeuler)
  • react/vue vite ts项目中,自动引入路由文件、 import.meta.glob动态引入路由 无需手动引入
  • cartorgapher的编译与运行
  • 需要保存至服务器的:常见编辑、发布文章页面基础技巧
  • Machine Learning HW2 report:语音辨识(Hongyi Lee)
  • 如何防止GitHub上的敏感信息被泄漏?
  • Jenkins+Docker+Git实现自动化CI/CD
  • 大带宽服务器都有哪些应用场景?