维护一个有序数组
在数组大小是一定的情况下,也就是知道元素上限, 每次需要删除最大值或者最小值
- 使用堆
时间复杂度 O(logn)
在不知道元素上限的情况下,数组大小不固定,元素值非常随机
- 使用二叉树 时间复杂度 O(logn)
- 但是当元素不够随机时,如有递增趋势,则效率会下降,时间效率会降至O(n)
如果元素值不随机,
- 可以使用自平衡二叉树,如红黑树
- 时间复杂度 O(n)
- 使用堆
时间复杂度 O(logn)
在不知道元素上限的情况下,数组大小不固定,元素值非常随机
- 使用二叉树 时间复杂度 O(logn)
- 但是当元素不够随机时,如有递增趋势,则效率会下降,时间效率会降至O(n)
如果元素值不随机,
- 可以使用自平衡二叉树,如红黑树
- 时间复杂度 O(n)