Racket\Scheme 比较并删除列表中不需要的项目
Racket\Scheme compare and delete unwanted items in a list
我有 2 个列表:
(Define list1 '("xx1" "xx2" xx3" "xx4" "xx5"))
(Define list2 '("xx2" "xx4" "xx5"))
上面列表中的项目只是一个例子,但无论哪种方式,它都是一个字符串项目。我需要做的是比较两个列表并删除 list1 中在 list2 中找到的项目。
有没有我可以做的短地图例程?
这不是一些作业项目,我希望这里有编程课程 类 不过 :/
#lang racket
(define list1 '("xx1" "xx2" "xx3" "xx4" "xx5"))
(define list2 '("xx2" "xx4" "xx5"))
(for/list ([x (in-list list1)]
#:unless (member x list2))
x)
结果:
'("xx1" "xx3")
还有remove*
一个例子:
#lang racket
(define list1 '("xx1" "xx2" "xx3" "xx4" "xx5"))
(define list2 '("xx2" "xx4" "xx5"))
(displayln (remove* list2 list1))
打印:
(xx1 xx3)
我有 2 个列表:
(Define list1 '("xx1" "xx2" xx3" "xx4" "xx5"))
(Define list2 '("xx2" "xx4" "xx5"))
上面列表中的项目只是一个例子,但无论哪种方式,它都是一个字符串项目。我需要做的是比较两个列表并删除 list1 中在 list2 中找到的项目。
有没有我可以做的短地图例程?
这不是一些作业项目,我希望这里有编程课程 类 不过 :/
#lang racket
(define list1 '("xx1" "xx2" "xx3" "xx4" "xx5"))
(define list2 '("xx2" "xx4" "xx5"))
(for/list ([x (in-list list1)]
#:unless (member x list2))
x)
结果:
'("xx1" "xx3")
还有remove*
一个例子:
#lang racket
(define list1 '("xx1" "xx2" "xx3" "xx4" "xx5"))
(define list2 '("xx2" "xx4" "xx5"))
(displayln (remove* list2 list1))
打印:
(xx1 xx3)