如何检测2D阵列中的重复?

时间:2016-11-28 12:05:09

标签: javascript arrays algorithm repeat

如何检测2D数组中的重复?

示例:

如果我有这个矩阵:

AABBAABBXX
CCDDCCDDXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX

其中X是数组中的任何其他元素

如何检测到该组

AABB
CCDD 

在矩阵中重复?

我的目标是创建一个Javascript算法来检测这种重复并在附近提出相同的重复。

示例:

AABBAABB(AABB)
CCDDCCDD(CCDD)
XXXXXXXXXXXXXX
XXXXXXXXXXXXXX
XXXXXXXXXXXXXX
XXXXXXXXXXXXXX

谢谢大家的回复!

编辑:在JS中我的数组有这种格式

M[0]={A,C,X,X,X,X}
M[1]={A,C,X,X,X,X}  
M[2]={B,D,X,X,X,X}  
...  

我可以在矩阵的所有位置添加元素,对于每个插入,我必须用算法检查,如果新元素创建组重复并且仅在这种情况下建议相同的重复(在水平和垂直方向,行/列)

另一个例子

M[0] = [F,F,F,H,H,H,I,I]
M[1] = [L,L,L,L,L,L,I,D]
M[2] = [F,F,F,H,H,H,I,N]
M[3] = [L,L,L,L,L,L,K,D]

使用js脚本处理后

M[0] = [F,F,F,H,H,H,I,I]
M[1] = [L,L,L,L,L,L,I,D]
M[2] = [F,F,F,H,H,H,I,N]
M[3] = [L,L,L,L,L,L,K,D]
M[4] = [F,F,F,H,H,H,*,*]
M[5] = [L,L,L,L,L,L,*,*]

(* is null value)

0 个答案:

没有答案