好久没写博客了,不是不想写而是没办法,公司管理太严格,笔记没法带出来。现在重新开始记录。 因为公司里面使用的似乎python所有这几个月都用的是python,这里记录一下python做力扣练习时候踩到的坑和学习到的知识点。 会从最基本的开始写起,因为当时才刚刚开始重新接触python。
1.基础知识点
1.列表头尾可以通过[0][-1]来获取 2.注意没有输入的情况,或者是空输入 3.如果需要保存最大值,我们可以通过list保存,只需要判断最新的输入是否比maxlist列表中的top打,如果是则通过append保存到maxlist中,如果不是则不处理,当然这只适合一个单出口的list,如果是两边出入的,我们使用deque来保存最大值,其他类似。(为什么写这一条已经不记得了) 4.string有isdigit函数来判断是否为数字 5.‘list’ object is not a callable
def fib(n: int) -> int:
f = [0, 1 ,1]
for i in range(0, n+1):
if not i < 3:
f.append(f(i-1) + f(i-2))
return f[n]
IndexError:list assignment index out of ange
def fib(n: int) -> int:
f = [0, 1 ,1]
for i in range(3, n+1):
if not i < 3:
f[i] = f[i+1] + f[i-2]
return f[n]
6.for _ in XXXX, 推荐使用_来表示当前不需要使用XXX中的内容。 7.动态规划中如果出现了字符串比较可以使用功能二维/多维列表来进行结果保存 8.正负无穷表示,
float("inf")
float("-inf")
9.for的几种简单使用 在这里可以看 10.sort & sorted sort:list中的排序方法,list.sort(cmp=None, key=None, reverse=False), 无返回值。 参数分别为: cmp:可选参数,指定了会使用自定义的方法进行排序 key:指定用来比较的元素,只有一个参数,具体函数就是取自可迭代对象的第一个元素来排序 reverse:排序规则,True降序,False升序(缺省)
|