在给定n×n个字符串的情况下,在三个方向上查找所有可能字符串的算法?

时间:2013-03-12 20:39:03

标签: java string algorithm search matrix

让我们说我们得到一个n乘以字符的数组。如何通过水平,垂直和对角线遍历2d字符数组来制作所有字符串的arraylist?我非常喜欢java中的答案。

1 个答案:

答案 0 :(得分:1)

如果您正在寻找解决问题的方法,我认为我会从@Geobits所说的开始,将其分解为更小的问题。我认为,给定矩阵中的某个元素,您将“探索”您需要的每个方向(每个方向都有单独的功能)。

因此,例如,exploreHorizo​​ntal(int x,int y)将从元素[x] [y]开始,并从[x + 1] [y]循环,其中index = 1,并探索直到x + index命中你的矩阵尺寸。循环的每次迭代都会将从起始x,y构建的字符串保存到x +索引y。如果你想在'向后'方向探索,你也会循环x-index直到你达到零。

只是一些想法,希望这可以让你开始黑客攻击一些代码。祝你好运!