Python Solutions for Leetcode.
题目原址 | 难易程度 | 题解 | 解题思路 |
---|---|---|---|
1991.寻找数组的中心索引 | 简单 | ✅ | left_sum + mid_value + right_sum = total, 即2*left_sum + mid_value = total, 找出第一个满足该式的值即可 |
35.搜索插入位置 | 简单 | ✅ | 二分查找,不断逼近大于等于target的值,最终的左指针位置即为插入位置或匹配位置 |
56.合并区间 | 中等 | ✅ | 按照区间左值大小排序,遍历时比较上一个区间右值与当前区间左值的大小,看是否能合并 |
题目原址 | 难易程度 | 题解 | 解题思路 |
---|---|---|---|
48.旋转矩阵 | 中等 | ✅ | 原地顺时针旋转九十度等价于:先沿主对角线(左上到右下)转置矩阵,再逐行翻转矩阵 |
73.矩阵置零 | 中等 | ✅ | 为实现原地操作,用第一行和第一列标记需要置零的行列,提前记录第一行第一列是否有0,最后再处理第一行第一列 |
498.对角线遍历 | 中等 | ✅ | 解析太长,放在题解里的注释了 |
题目原址 | 难易程度 | 题解 | 解题思路 |
---|---|---|---|
14.最长公共前缀 | 简单 | ✅ | 把第一个字符串作为初始prefix, 依次和后面的每个字符串去比对,前缀不同就缩短prefix,直到都能匹配为止。如果某次比对后prefix变成空字符串,直接返回"" |
5.最长回文子串 | 中等 | ❓ | |
151.反转字符串中的单词 | 中等 | ✅ | python字符串是不可变类型,所以无法实现进阶原地解法,这题算简单题。先去除空格得到单词列表,反转之后拼接空格即可 |
28.找出字符串中第一个匹配项的下标 | 简单 | ✅ | 看完链接里关于KMP算法的概念之后,看本题题解,注释清晰 |
题目原址 | 难易程度 | 题解 | 解题思路 |
---|---|---|---|
344.反转字符串 | 简单 | ✅ | 左右指针往中间逼近,左右交换字符即可 |