【发布时间】:2011-09-08 15:52:20
【问题描述】:
我有一个二维整数数组(比如 1000 x 1000),我们称之为矩阵。此矩阵中的每个单元格都有一个 X 坐标和 Y 坐标(在此示例中每个坐标为 0 到 999)。最初所有网格单元的值为 0。在程序运行期间,一些矩阵单元被设置为另一个值 0。
现在我需要一个快速函数(算法),它接受一些 X 和 Y 值并返回该坐标处的矩阵值。但是,如果指定 X/Y 位置的矩阵为 0,则算法应在矩阵内确定一个尽可能接近原始 X/Y 位置的非零值。
我曾考虑在每个循环周期增加偏移量围绕原始 X/Y 位置循环,但我不确定这是否真的是最快的算法...
有什么想法吗?我更喜欢 Java 代码,但任何伪代码也可以:)
提前感谢您的帮助! 亲切的问候,马蒂亚斯
【问题讨论】: