sml в списке параметров функций рекурсивных

Список & целое число n. Функция должна добавить n-й элемент списка и вернуть оставшийся список. Например

insertnth ([5,6,7],2,9); вывод: [5,9,6,7]

п 2,9 это то, что я добавляю вторую строку

1 ответ

Серьезно, луцловер. Вам нужно прочитать учебник или введение в SML. Например, см. Страницу литературы SML/NJ.

По сути, у вас есть два способа решения этой проблемы. Учитывая функцию insertnth(xs, pos, n)то уродливый нефункциональный способ - разделить список на позиции pos, а затем вернуться left @ n :: right где left а также right являются левой и правой частью раскола. Или более функциональный способ, с рекурсивной функцией, которая проходит через список xs поэлементно, уменьшая pos переменная каждый раз, а затем, когда вы достигнете позиции 1, а затем вернуть n добавлен в оставшийся список, чтобы остановить рекурсию.

Другие вопросы по тегам