大根堆和小根堆的应用
利用大根堆解决有序结构中取前N个数的问题。
堆排序的时间复杂度
单次添加某个元素时,堆排序的时间复杂度为log N,其中N为数组长度。
系统堆和手工实现的堆
如果题目中使用堆的方式是挨个添加/删除,不需要对已添加的元素进行修改,那可以使用系统给提供的堆。但是一旦需要对已添加的元素进行修改,那必须是手动实现堆,然后进行适当修改,这样才能保证时间复杂度达到最优。
利用大根堆解决有序结构中取前N个数的问题。
单次添加某个元素时,堆排序的时间复杂度为log N,其中N为数组长度。
如果题目中使用堆的方式是挨个添加/删除,不需要对已添加的元素进行修改,那可以使用系统给提供的堆。但是一旦需要对已添加的元素进行修改,那必须是手动实现堆,然后进行适当修改,这样才能保证时间复杂度达到最优。