Ocaml中的反向数组
我写这篇文章是为了在OCaml中反转数组,就像我在Java中通常做的那样:Ocaml中的反向数组,ocaml,Ocaml,我写这篇文章是为了在OCaml中反转数组,就像我在Java中通常做的那样: let reversearray array = let len=Array.length array in for i=0 to (len/2) do let temp = array.(i) in array.(i) <- array.(len-i-1); array.(len-i-1) <- temp done;
let reversearray array = let len=Array.length array in
for i=0 to (len/2) do
let temp = array.(i) in
array.(i) <- array.(len-i-1);
array.(len-i-1) <- temp done;
array;;
有人能解释一下怎么了吗 假设长度为2。您的for循环正在为i=0和1执行。这会使元素反转两次 通常使用受C语言影响的语言编写循环,如下所示:
for (i = 0; i < len/2; i++)
(i=0;i
这只在i=0时执行,这样做是正确的。OCaml对包括上限值在内的所有值执行循环
for (i = 0; i < len/2; i++)