检查矩阵的所有行是否在 Python 中彼此循环旋转
假设,我们提供了一个大小为 n*n 的矩阵,其中包含整数。我们必须找出该矩阵的所有行是否都是其前一行的圆形旋转。在第一行的情况下,应该是第n行的圆周旋转。
所以,如果输入是这样的
B | 一种 | D | C |
C | 乙 | A | D |
D | C | B | 一种 |
A | D | C | 乙 |
那么输出将为True。
示例
让我们看看以下实现以获得更好的理解 -
def solve(matrix) :concat = ""
for i in range(len(matrix)) :
concat = concat + "-" + str(matrix[0][i])
concat = concat + concat
for i in range(1, len(matrix)) :
curr_row = ""
for j in range(len(matrix[0])) :
curr_row = curr_row + "-" + str(matrix[i][j])
if (concat.find(curr_row)) :
return True
return False
matrix = [['B', 'A', 'D', 'C'],
['C', 'B', 'A', 'D'],
['D', 'C', 'B', 'A'],
['A', 'D', 'C', 'B']]
print(solve(matrix))
输入
[['B', 'A', 'D', 'C'],输出结果['C', 'B', 'A', 'D'],
['D', 'C', 'B', 'A'],
['A', 'D', 'C', 'B']]
True
以上是 检查矩阵的所有行是否在 Python 中彼此循环旋转 的全部内容, 来源链接: utcz.com/z/317485.html