【问题标题】:Need help writing a code check if a list is a sublist of another list?需要帮助编写代码检查列表是否是另一个列表的子列表?
【发布时间】:2015-05-18 03:27:08
【问题描述】:

我正在 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))]))

【问题讨论】:

标签: list recursion scheme racket sublist


【解决方案1】:

您正在使用cons 处理所有内容。在某些地方您需要将其替换为car 或first,而在其他地方则需要使用cdr 或rest。

cons 的唯一目的是创建新的 cons 单元格/将新项目添加到列表中。

【讨论】:

    猜你喜欢
    • 2021-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多