История изменений
Исправление Ritmik, (текущая версия) :
удалить дублирующиеся подряд символы в строке
На Clojure:
Неленивый аналог (нужен ленивый, добавить lazy-seq перед cons) хаскельского варианта Waterlaz-а:
(defn f [[x & xs :as col]]
(when (not (empty? col))
(cons x (drop-while #(= x %) (f xs)))))
Еще вариант:
(->> "hhhxxxxxhfgffhh"
(partition 2 1)
(filter (partial apply not=))
(map first)
(apply str))
"hxhfgf"
Исходная версия Ritmik, :
удалить дублирующиеся подряд символы в строке
На Clojure:
Неленивый аналог (нужен ленивый, добавить lazy-seq перед cons) хаскельского варианта Waterlaz-а:
(defn f [[x & xs :as col]]
(when (not (empty? col))
(cons x (drop-while #(= x %) (f xs)))))
Еще вариант:
(->> "hhhxxxxxhfgffhh"
(partition 2 1)
(filter (complement (partial apply =)))
(map first)
(apply str))
"hxhfgf"