用 Python 编写程序从给定矩阵中找出第 n 个最小数
pythonserver side programmingprogramming
假设我们有一个 2D 矩阵,其中每行和每列都按非递减顺序排序,我们必须找出第 n 个最小数。
因此,如果输入如下
| 2 | 4 | 30 |
| 3 | 4 | 31 |
| 6 | 6 | 32 |
如果 n = 4,则输出为 6。
为了解决这个问题,我们将遵循以下步骤 −
- lst := 一个新列表
- 对于矩阵中的每一行 i,执行
- 对于 i 中的每个单元格 j,执行
- 在 lst 的末尾插入 j
- 对于 i 中的每个单元格 j,执行
- 对列表 lst 进行排序
- 返回 lst[n]
让我们看看下面的实现以便更好地理解 −
示例
class Solution: def solve(self, matrix, n): lst = [] for i in matrix: for j in i: lst.append(j) lst.sort() return lst[n] ob = Solution() matrix = [ [2, 4, 30], [3, 4, 31], [6, 6, 32] ] n = 4 print(ob.solve(matrix, n))
输入
matrix = [ [2, 4, 30], [3, 4, 31], [6, 6, 32] ] n = 4
输出
6
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

