摘要:
按照时间复杂度、稳定性、排序方式分为三个梯队 第三梯队选手:冒泡、选择、插入 平均时间复杂度都是$O(n^2)$ 冒泡排序 思想 每次遍历交换相邻位置元素,遍历数组长度次 def bubblesort(nums): for i in range(len(nums)): for j in range( 阅读全文
摘要:
创建最大(小)堆 二叉堆本质上是一种完全二叉树,存储方式并不是链式存储,而是顺序存储 堆操作:插入(叶子节点上调),删除(堆顶元素下沉) 堆创建:非叶子节点下沉(从最后一个非叶子节点开始) 最小堆: 最小堆任何一个父节点的值,都小于等于它左右孩子节点的值 创建过程:如果非叶子节点值大于其子节点,将其 阅读全文