首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分类子列表(球拍)

分类子列表(球拍)
EN

Stack Overflow用户
提问于 2021-12-17 11:04:07
回答 1查看 60关注 0票数 -1

排序子列表

代码语言:javascript
复制
((b a c) (e d) (f h g) (d e) (k l i j) (n m) (o)) =>
((a b c) (d e) (f g h) (d e) (i j k l) (m n) (o))

在语言游戏里。我试过很多东西,但都没用。帮助解决我写过的问题:

代码语言:javascript
复制
(define (order-by list order)
      (cond ((null? order) '())
        ((member (car order) list) (cons (car order) (order-by (removef (car order) list) order)))
        (#t (order-by list (cdr order)))))
       
  
(define (task list)
      (cond ((null? list) '())
            
                      (task (cdr list))))))
       
(print (task '((d a c) (q d) (f h g) (d e) (k l i j) (n m) (o))))

但这不管用

EN

回答 1

Stack Overflow用户

发布于 2021-12-19 21:27:50

代码语言:javascript
复制
(map (lambda (sublist) (sort sublist string<? #:key symbol->string)) 
     '((b a c) (e d) (f h g) (d e) (k l i j) (n m) (o)))
;;=> '((a b c) (d e) (f g h) (d e) (i j k l) (m n) (o))

在通用Lisp中,这等于:

代码语言:javascript
复制
(mapcar (lambda (sublist) (sort sublist #'string< :key #'string)) 
        '((b a c) (e d) (f h g) (d e) (k l i j) (n m) (o)))
;; => ((A B C) (D E) (F G H) (D E) (I J K L) (M N) (O))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70392186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档