【发布时间】:2012-07-06 10:18:38
【问题描述】:
让我用一个例子来描述我的问题。假设我们有矩阵A:
A =
1 0 1
1 1 1
0 1 1
和矩阵B:
B =
1 1
1 1
如何编写函数C = func(A, B) 来检查B 是否存在于A 中?
如果A中存在,则函数返回C = [0 0 0; 0 1 1; 0 1 1],如果不存在,则函数返回C = [0 0 0; 0 0 0; 0 0 0];。
编辑:
需要说明的是,如果A是m-by-n,而B是p-by-q ,然后总是 m > p 和 p > q。
提前致谢。
【问题讨论】:
-
你想过这个吗??考虑一下如果 A 是一个全部包含 1 的 4x4 矩阵,您希望返回什么?这将与 A 相同 - 这实际上对您有用吗?也许这正是您想要的,只是指出以防您没有考虑过。
-
@Ehsan 你能详细说明一下吗。例如,您在 [A(2,2) A(2,3);A(3,2) A(3,3)] 中匹配了模式 B。但是为什么不能和[A(1,1) A(2,1);A(1,3) A(2,3)]匹配。是因为您在 A 中寻找的模式必须是连续的吗?
-
@Abhinav 是的,它应该是连续的,而且我确信 A 中的 B 总是会有一个匹配位置。
-
@mathematician1975 看看我的编辑老兄:)
-
@Ehsan 你的意思是“至少一场比赛”或“最多一场比赛”或“一个且唯一一场确定性比赛”?
标签: matlab