这是一个采访问题:
给定n×m位的矩阵找到矩阵中形成的最大X并返回该X的对角线的大小.X被定义为2个大小相等的对角线,它们共享一个1。
例如,矩阵:
00100001
00010010
00001100
00001100
00010010
00100001
返回大小为1,因为给定的X无效,因为中间部分不共享单个1.另一方面,以下矩阵
101
010
101
将返回值3,因为对角线为3.编写此类程序。
我理解第一个解决方案here,但我想知道是否有更有效的方法来解决这个问题。想法?
答案 0 :(得分:2)
关于时间复杂性,没有渐近更好的解决方案。一个较弱的问题是检查矩阵是否包含任何1个单元格。对于这个问题,你显然你必须访问每个单元格,它给你O(nxm)。现在这是原始问题的下限,它也有O(nxm)。 QED。