堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn)
堆分为大根堆和小根堆,是完全二叉树。每个节点的值都不大于其父节点的值为大顶堆,每个节点的值都不小于其父节点的值为小顶堆。
公式化描述就是:
大顶堆:arr[i] >= arr[2i+1] && arr[i] >= arr[2i+2]
小顶堆:arr[i] <= arr[2i+1] && arr[i] <= arr[2i+2]
堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn)
堆分为大根堆和小根堆,是完全二叉树。每个节点的值都不大于其父节点的值为大顶堆,每个节点的值都不小于其父节点的值为小顶堆。
公式化描述就是:
大顶堆:arr[i] >= arr[2i+1] && arr[i] >= arr[2i+2]
小顶堆:arr[i] <= arr[2i+1] && arr[i] <= arr[2i+2]
點這個: https://towardsdatascience.com/a-road-map-for-deep-learning-b9aee0b2919f