排序总结:
时间复杂度 | 空间复杂度 | 能否稳定性 | |
选择排序 | O(N²) | O(1) | × |
冒泡排序 | O(N²) | O(1) | √ |
插入排序 | O(N²) | O(1) | √ |
归并排序 | O(N*logN) | O(N) | √ |
随机快排 | O(N*logN) | O(logN) | × |
堆排序 | O(N*logN) | O(1) | × |
二叉树:
例题:
236. 二叉树的最近公共祖先 - 力扣(LeetCode)
剑指 Offer 37. 序列化二叉树 - 力扣(LeetCode)
树的思路通用模板:
当我们能从左右两个子树拿信息的时候,那就说明我们可以使用这个通用模板来解题
例如下面的判断满二叉树: