OCaml "reading" 一个矩阵(列表的列表)

OCaml "reading" a matrix (list of lists)

我遇到了这个问题,我想更改矩阵的 col ln 中元素的值我已经有了一个函数,但我想我可以做一个更好的,唯一的是我可以想不出另一种从矩阵中获取元素并将其放回的方法 我可以用

得到它

List.nthc(List.nth磅米)

但我很难把它放回去

我现在有的是(左右不玩)

matrixleft m @(( List.nth c (List.nth lb m) ) + 1 )::matrixright m

这段代码在复杂度的基础上对我来说看起来不错,尽管它将遍历输入矩阵两次——一次获取旧值,一次安装新值。如果你不介意一些更繁琐的编码,你只需遍历一次就可以得到答案。

如果您不遵循某些外部强加的要求,最好使用真实矩阵(数组数组)。然后就没有遍历,所以你得到不断的时间更新。