定义一个函数,给定一个列表 L、一个对象 x 和一个正整数 k,返回 L 的副本,其中 x 插入第 k 个位置。例如,如果 L 为 [a1, a2, a3] 且 k=2,则返回 [a1, x, a2, a3]。如果 L 的长度小于 k,则在末尾插入。对于这类问题,你不应该使用,例如,长度函数。想想函数如何计算长度。没有“if-then-else”或任何辅助功能。
我已经想出了如何制作一个函数来查找列表的长度
fun mylength ([]) = 0
| mylength (x::xs) = 1+ mylength(xs)
但是,正如问题所述,我不能将其用作插入功能中的辅助功能。另外,我不知道如何使用插入功能?任何帮助或指导将不胜感激!