leetcode刷题技巧

  1. 对于一个list嵌套list,基于内list的某个值进行排序,如果有相等的,再基于内list的另外一个值进行排序。(嵌套一层,二层,三层)

python中的队列

from collections import deque
deque 数据类型来自于collections 模块,支持从头和尾部的常数时间 append/pop 操作。若使用 Python 的 list,通过 list.pop(0) 去除头部会消耗 O(n)O(n) 的时间。(摘自leetcode 199. 二叉树的右视图的官方题解)

删除数组的第一个元素方法

  1. pop方法
    list.pop(0)

  2. remove方法
    list.remove(list[0])

  3. slice使用
    list = list[1:]

  4. del方法
    del list[0]

初始化一个二维数组

[ [0] * col for i in range(row)]

判断奇偶

num & 1 == 1 奇数
num & 1 == 0 偶数

广度优先算法

  • 有一个栈来存储遍历节点
  • 一个二维数组来存储是否遍历过
  • 注意处理边界条件为空的情况

深度优先遍历

  • 递归思想

你可能感兴趣的:(leetcode刷题技巧)