【发布时间】:2020-06-03 04:08:41
【问题描述】:
我最近开始学习 ocaml,但无法解决问题。
目标:
给定一个整数列表和一个函数,根据给定函数将整数排序为等价类,作为另一个列表中的列表。等价列表的顺序必须与原始列表中给出的顺序相同。
更新:我决定尝试让它在没有库功能的情况下工作。
到目前为止,这是我的代码。它编译但不运行。任何有关语法的帮助将不胜感激。
let buckets f lst =
let rec helpfunction f lst newlist =
match lst with
| [] ->newlist
| h::t -> match newlist with
| [] -> helpfunction f lst [h]@newlist
| [a]::_ -> if f h a
then helpfunction f t [a::h]@newlist
else helpfunction f t ([a]::[h]@mylist
重要提示:这是一个家庭作业问题,所以我不是在寻找为我粘贴的代码。我试图在我的家中通过它对整体思维过程和语法有所帮助。一旦我得到它的工作,我会努力提高它的效率
【问题讨论】:
-
您尚未提出具体问题。您是否正在寻求帮助以编译您的代码(我看到一些错误)?或者你想知道你提出的方法是否可行?
-
一点点A,一点点B。第一步是让我的代码工作,然后我会专注于效率
标签: recursion functional-programming ocaml equivalence-classes