类型

  • ​​数组​​
  • ​​字符串​​
  • ​​贪心算法​​

数组

​209. 长度最小的子数组​

双指针,滑动窗口,暴力破解会超出时间限制

​剑指 Offer 53 - II. 0~n-1中缺失的数字​

二分法

class Solution(object):
def missingNumber(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
i,j =0 ,len(nums)-1
while i<=j:
m=(i+j)//2
if nums[m]==m: i=m+1
else :j=m-1
return i

​695. 岛屿的最大面积​

1 类似迷宫,深度优先算法,一个点向上,下,左,右遍历
2 编程思维,函数里面嵌套函数,类似知道n,n-1则么做,有点像递归下去,真的哈哈都是工具

字符串

  1. 括号生成 [中等]
    ​​​回溯法dfs​

判断回溯很简单,拿到一个问题,你感觉如果不穷举一下就没法知道答案,那就可以开始回溯了。

一般回溯的问题有三种:

Find a path to success 有没有解
Find all paths to success 求所有解
求所有解的个数
求所有解的具体信息
Find the best path to success 求最优解

贪心算法

这题好像看不出贪心,额~~
​​​944. 删列造序​

(1) for col in zip(*A):
​zip()函数的用法​​

这里的"*"感觉是转义的意思
(2) any()函数
any() 函数用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。

元素除了是 0、空、FALSE 外都算 TRUE。