сортировка вставок с использованием clojure - PullRequest
1 голос
/ 26 января 2012

Я столкнулся с этой ошибкой, когда я попытался оценить последнюю строку ниже: «Нет сообщения.

(defn my-insertion-sort [lst]
  (loop [list lst result '()]
    (if-not (seq? list) result
            (recur (rest list) (my-insert (first list) result)))))

(defn my-insert [n lst]
  (cond (nil? lst) (list n)
        (> (first lst) n) (conj lst n)
        :else
        (conj (my-insert n (rest lst)) (first lst))))

(my-insertion-sort '(2 1 3))

Что не так с функцией "my-inserttion-sort"?

1 Ответ

2 голосов
/ 27 января 2012
(defn my-insertion-sort [lst]
  (loop [list lst result '()]
    (if (empty? list) result
        (recur (rest list) (my-insert (first list) result)))))

(defn my-insert [n lst]
  (cond 
    (empty? lst) (list n)
    (> (first lst) n) (conj lst n)
    :else (conj (my-insert n (rest lst)) (first lst))))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...