题目
给定一个数组,求排好序的该数组中第k小的数。
具体描述请见hihoCoder。
解题思路
二分查找。采用类似快排里split的思想,每次计算数组第一个元素在排好序的该数组中的位置,并且判断该位置与k的大小关系,进行二分。
时间复杂度
类似快排,平均情况下时间复杂度为NlogN。最坏情况是N2。
代码
1 |
|
给定一个数组,求排好序的该数组中第k小的数。
具体描述请见hihoCoder。
二分查找。采用类似快排里split的思想,每次计算数组第一个元素在排好序的该数组中的位置,并且判断该位置与k的大小关系,进行二分。
类似快排,平均情况下时间复杂度为NlogN。最坏情况是N2。
1 |
|
Author:Who Watson
Link:https://wangshenghu.github.io/2016/05/17/2016-05-17-hihocoder-binary-search-kth/
Publish date:May 17th 2016, 4:13:20 pm
Update date:December 4th 2022, 5:09:25 pm
License:本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可