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