【发布时间】:2023-01-30 01:41:52
【问题描述】:
如何根据 Racket-Plait 中的运算符对两个列表进行排序和合并? > 升序,< 降序。到目前为止,这是我所拥有的,但我不知道下一步该怎么做。
(define (merge [op : (Number Number -> Boolean)]
[int-list1 : (Listof Number)]
[int-list2 : (Listof Number)]) : (Listof Number)
(cond
[(equal? op <) "something"]
[(equal? op >) "do something"]))
(test (merge < '(1 4 6) '(2 5 8))
'(1 2 4 5 6 8))
【问题讨论】:
-
如果这是家庭作业,你能添加确切的说明吗?您的代码的哪些部分包含在说明中(因此解决方案应该包括它们),哪些是您的?
-
你应该只使用
op,而不是根据它是什么做不同的事情。看看(define op <) (op 1 2)和(define op >) (op 1 2)