Я новичок в OCaml и вам нужна простая функция для замены элемента в списке.Функция OCaml: заменить элемент в списке
Через некоторое время я должен был выполнить эту работу, но мне не нужен этот аргумент count в функции.
let rec replaceelem ls x elem count=
match ls with
| [] -> ls
| h::t -> if (count = x) then
elem::(replaceelem t x elem (count+1))
else
h::(replaceelem t x elem (count+1))
Пример
# let a = [1;2;3;4;5];;
val a : int list = [1; 2; 3; 4; 5]
# replaceelem a 3 99 0;;
- : int list = [1; 2; 3; 99; 5]
Оберните replaceelem FUNC с другой функцией, которые принимают только новый elem и старый список, и вызывать вашу рекурсивную версию из этой функции. –