- Leetcode 的 Python 语言练习,不间断更新
- 另含 《剑指 Offer》 题目的 Python 解法
- 每道题进行注释分析,都可直接运行
- 欢迎star、fork、微信 (fivesheeps,加好友备注 'leetcode' ) 交流
- 网址:https://leetcode-cn.com/
No | 题名 | 解决方法 | 类型 | 备注 |
---|---|---|---|---|
#01 | 堆排序 | Heap sort | 排序 | |
#02 | Huffman 树 | Huffman tree | 树 | Lambda 函数 |
#03 | 归并排序 | Merge sort | 排序 |
No | 题名 | 解决方法 | 出现频率 | 备注 |
---|---|---|---|---|
#19 | 正则表达式匹配 | 正则表达式匹配 | 60% | 递归(低效❗️) |
#23 | 链表中的环入口节点 | 链表中的环入口节点 | 35% | 快慢指针 |
#24 | 反转链表 | 反转链表 | 86% | 递归、栈、迭代 |
#25 | 合并两个排序链表 | 合并两个排序链表 | 63% | 递归法、迭代法 |
#26 | 树的子结构 | 树的子结构 | 24% | 递归法 |
#27 | 镜像二叉树 | 镜像二叉树 | 递归法 | |
#28 | 对称二叉树 | 对称二叉树 | 32% | 递归法、迭代法 |
#36 | 二叉搜索树与双向链表 | 二叉搜索树与双向链表 | 52% | 递归法 |
#37 | 序列化二叉树 | 序列化二叉树 | 27% | 递归法 |
#38 | 字符串的排列 | 字符串的排列 | 62% | 递归法 |
#39 | 数组中出现次数 超过一半的数字 |
数组中出现次数 超过一半的数字 |
30% | 迭代法 |
#40 | 最小的 k 个数 | 最小的 k 个数 | 47% | 快速排序 (海量数据❗️) |
#41 | 数据流中的中位数 | 数据流中的中位数 | 41% | 堆排序(❗️) |
#42 | 连续子数组的最大和 | 连续子数组的最大和 | 动态规划 | |
#43 | 1~N 整数中 1 出现的次数 | 1~N 整数中 1 出现的次数 | 递归法 | |
#44 | 数字序列中某一位的数字 | 数字序列中某一位的数字 | 迭代法 | |
#45 | 把数组排成最小的数 | 把数组排成最小的数 | - | |
#46 | 把数字翻译成字符串 | 把数字翻译成字符串 | 动态规划 | |
#47 | 礼物的最大价值 | 礼物的最大价值 | 动态规划 | |
#48 | 最长不含重复字符 的子字符串 |
最长不含重复字符 的子字符串 |
动态规划 | |
#49 | 丑数 | 丑数 | 13% | |
#50 | 第一个只出现一次的字符 | 第一个只出现一次的字符 | ||
#51 | 数组中的逆序对 | 数组中的逆序对 | ||
#52 | 两个链表的第一个公共节点 | 两个链表的第一个公共节点 | 链表 | |
#53 | 在排序数组中查找数字 | 在排序数组中查找数字 | 二分法 | |
#54 | 二叉搜索树的第 K 大节点 | 二叉搜索树的第 K 大节点 | 二叉树 |