堆排序是利用堆這種數據結構而設計的一種排序算法,堆排序是一種選擇排序,它的最壞,最好,平均時間複雜度均爲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