, . , , /. n n + 1. - n, n-1. 1 0, .
, , ( ) (, ) ( ). [fst & rst] (seq str). Clojure, .
(let [fst (first str)
rst (rest str)])
, . , , , , - (, , ..). , , - cons, , cons.
remove-duplicates: , , , , () , (remove-dups rst). , , (remove-dups rst) ( ).
.
(defn remove-dups [str]
(if (empty? str)
nil
(let [fst (first str)
rst (rest str)]
(if (= fst (first rst))
(remove-dups rst)
(cons fst (remove-dups rst))))))
"" nil 3.