Sort disjoint sublist: Difference between revisions

Adds Clojure solution
(Adds Clojure solution)
Line 252:
7 0 5 4 3 2 1 6
</pre>
 
=={{header|Clojure}}==
<lang clojure>(defn disjoint-sort [coll idxs]
(let [val-subset (keep-indexed #(when ((set idxs) %) %2) coll)
replacements (zipmap (set idxs) (sort val-subset))]
(apply assoc coll (flatten (seq replacements)))))</lang>
 
{{out}}
<pre>user=> (disjoint-sort [7 6 5 4 3 2 1 0] #{6 1 7})
[7 0 5 4 3 2 1 6]</pre>
 
=={{header|D}}==
Anonymous user