Jump to content

Matrix transposition: Difference between revisions

added Clojure
m (→‎{{header|J}}: add solution/example headings)
(added Clojure)
Line 275:
After execution, the memory maps of a and b will be those of m by n arrays instead
of n by m.
 
=={{header|Clojure}}==
{{trans|Common Lisp}}
<lang lisp>;takes matrix represented as nested lists
(defn transpose [m]
(apply map list m))
 
;takes matrix represented as nested vectors
(defn transpose [m]
(vec (apply map vector m)))</lang>
 
<lang lisp>; takes both representations (and can be extended)
(defmulti transpose class)
(defmethod transpose clojure.lang.PersistentList [m]
(apply map list m))
(defmethod transpose clojure.lang.PersistentVector [m]
(vec (apply map vector m)))
</lang>
 
=={{header|Common Lisp}}==
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.