python 有序矩阵搜索
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 有序矩阵搜索相关的知识,希望对你有一定的参考价值。
"""
input: sorted Matrix, key
output: key in Matrix ?
solution: search from right-up position
"""
def find(Matrix, key) -> bool:
width, height = len(Matrix[0]), len(Matrix)
startX = 0
startY = width - 1
while 0 <= startX < height and 0 <= startY < width and Matrix[startX][startY] != key:
if Matrix[startX][startY] > key:
startY -= 1
else:
startX += 1
if not (0 <= startX < height and 0 <= startY < width):
return False
return True
def main():
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
if find(matrix, 7):
print("7 is in matrix")
if not find(matrix, 10):
print("10 is not in matrix")
if __name__ == "__main__":
main()
以上是关于python 有序矩阵搜索的主要内容,如果未能解决你的问题,请参考以下文章
java 在有序矩阵中搜索
LeetCode 378. 有序矩阵中第K小的元素 | Python
二维数组3:搜索二维矩阵
240. 搜索二维矩阵 II
LeetCode74. 搜索二维矩阵
python算法题---搜索二维矩阵