設萬維讀者為首頁 廣告服務 技術服務 聯繫我們 關於萬維
簡體 繁體 手機版
分類廣告
版主:
萬維讀者網 > 靈機一動 > 帖子
做了個難的
送交者: 思良將 2013年06月06日18:55:24 於 [靈機一動] 發送悄悄話

做了個難的

(define bubble
   (lambda (predicate b slst)
     (if (null? slst)
         (list b)
         (if (predicate (car slst) b)
             (cons (car (bubble predicate (car slst) (cdr slst)))
                   (cons b (cdr (bubble predicate (car slst) (cdr slst)))))
             (cons (car (bubble predicate b (cdr slst)))
                   (cons (car slst) (cdr (bubble predicate b (cdr slst)))))))))
;Value: bubble
(define sort
   (lambda (predicate lon)
     (if (null? lon)
         '()
         (cons (car (bubble predicate (car lon) (cdr lon)))
               (sort predicate (cdr (bubble predicate (car lon) (cdr lon))))))))
;Value: sort
(sort < '(8 2 5 2 3))
;Value 27: (2 2 3 5 8)
(sort >'(8 2 5 2 3))
;Value 28: (8 5 3 2 2)
0%(0)
0%(0)
  上邊的這個太慢了。改成這樣就很快了 - 思良將 06/07/13 (2398)
標 題 (必選項):
內 容 (選填項):
實用資訊
回國機票$360起 | 商務艙省$200 | 全球最佳航空公司出爐:海航獲五星
海外華人福利!在線看陳建斌《三叉戟》熱血歸回 豪情築夢 高清免費看 無地區限制
一周點擊熱帖 更多>>
一周回復熱帖
歷史上的今天:回復熱帖
2012: 勃朗寧手槍與佳能噴墨打印機
2012: 我們老了怎麼辦?
2010: 校園趣事系列