設萬維讀者為首頁 廣告服務 技術服務 聯繫我們 關於萬維
簡體 繁體 手機版
分類廣告
版主:
萬維讀者網 > 靈機一動 > 跟帖
上邊的這個太慢了。改成這樣就很快了
送交者: 思良將 2013月06月07日00:58:30 於 [靈機一動] 發送悄悄話
回  答: 做了個難的思良將 於 2013-06-06 18:55:24


上邊的這個太慢了。改成這樣就很快了



(define bubble

  (lambda (predicate b slst)

    (if (null? slst)

        (list b)

        (if (predicate (car slst) b)

            (let ((bu-ret (bubble predicate (car slst) (cdr slst))))

              (cons (car bu-ret) (cons b (cdr bu-ret))))

            (let ((bu-ret (bubble predicate b (cdr slst))))

              (cons (car bu-ret) (cons (car slst) (cdr bu-ret))))))))

;Value: bubble



(define sort

  (lambda (predicate lon)

    (if (null? lon)

        '()

        (let ((bu-ret (bubble predicate (car lon) (cdr lon))))

          (cons (car bu-ret) (sort predicate (cdr bu-ret)))))))

;Value: sort



(sort < '(1 26 8 2 35 897 45 97 425 90 34 87 76 46 38 82 7 58 8 48 231 85 15 700 358 0 63 78 4174 896 41 32))

;Value 11: (0 1 2 7 8 8 15 26 32 34 35 38 41 45 46 48 58 63 76 78 82 85 87 90 97 231 358 425 700 896 897 4174)



(sort > '(1 26 8 2 35 897 45 97 425 90 34 87 76 46 38 82 7 58 8 48 231 85 15 700 358 0 63 78 4174 896 41 32))

;Value 12: (4174 897 896 700 425 358 231 97 90 87 85 82 78 76 63 58 48 46 45 41 38 35 34 32 26 15 8 8 7 2 1 0)

0%(0)
0%(0)
標  題 (必選項):
內  容 (選填項):
實用資訊
回國機票$360起 | 商務艙省$200 | 全球最佳航空公司出爐:海航獲五星
海外華人福利!在線看陳建斌《三叉戟》熱血歸回 豪情築夢 高清免費看 無地區限制
一周點擊熱帖 更多>>
一周回復熱帖
歷史上的今天:回復熱帖
2012: 勃朗寧手槍與佳能噴墨打印機
2012: 我們老了怎麼辦?
2010: 校園趣事系列