Golang | Leetcode Golang题解之第378题有序矩阵中第K小的元素
题目:https://i-blog.csdnimg.cn/direct/6b04edeb130547a688d509c8650d2ce3.png
题解:
func kthSmallest(matrix [][]int, k int) int {
n := len(matrix)
left, right := matrix, matrix
for left < right {
mid := left + (right - left) / 2
if check(matrix, mid, k, n) {
right = mid
} else {
left = mid + 1
}
}
return left
}
func check(matrix [][]int, mid, k, n int) bool {
i, j := n - 1, 0
num := 0
for i >= 0 && j < n {
if matrix <= mid {
num += i + 1
j++
} else {
i--
}
}
return num >= k
}
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]