我正在研究DrRacket中的一个程序,该程序检查自然数列表lst1是否是另一个自然数列表的子列表lst2。 到目前为止,我有,
(define (sublist? lst1 lst2)
(cond
[(or (not (cons? lst2)) (empty? lst2)) false]
[(or (equal? lst1 (cons lst2)) (sublist? lst1 (cons lst2))) true]
[else (sublist? lst1 (cons lst2))]))
答案 0 :(得分:1)
您将cons
用于所有事情。在某些地方,您需要将其替换为car
或first
,而将其替换为cdr
或rest
。
cons
的唯一目的是创建新的利弊单元/将新项目添加到列表中。