编写一个OCaml程序,检查矩阵A是否包含在矩阵B中

编写一个OCaml程序,检查矩阵A是否包含在矩阵B中,ocaml,submatrix,Ocaml,Submatrix,尽管Java没有遇到任何重大问题,但关于OCaml编程语言,我不能这样说。我应该创建一个函数subMat,对于两个矩阵,检查矩阵a是否是矩阵B的子矩阵,如果是,则返回true-val subMat:int list->int list->bool= 我非常感谢您的帮助,因为我真的不知道如何解决这个问题。这个问题可以通过使用int-array数组或Bigarray.Array2然后应用传统的命令式编程方法来解决 另一种方法是将矩阵连接到int list中,并应用子字符串查找算法,例如Knuth M

尽管Java没有遇到任何重大问题,但关于OCaml编程语言,我不能这样说。我应该创建一个函数
subMat
,对于两个矩阵,检查矩阵a是否是矩阵B的子矩阵,如果是,则返回true-
val subMat:int list->int list->bool=


我非常感谢您的帮助,因为我真的不知道如何解决这个问题。

这个问题可以通过使用
int-array数组
Bigarray.Array2
然后应用传统的命令式编程方法来解决


另一种方法是将矩阵连接到
int list
中,并应用子字符串查找算法,例如Knuth Morris-Pratt(如果不想太花哨,也可以自己发明)。

处理矩阵的列表是您的选择吗?这似乎不是最好的主意……如果您想使用Java方法,您可能必须使用
int-array-array
(查看
array.make_-matrix
)。