He utilizado la siguiente expresión para recuperar el índice del número más pequeño en un vector. Sin embargo, me gustaría evitar el uso de .indexOf
(por razones de eficiencia y tal vez de precisión numérica, aunque supongo que los números se convierten implícitamente en cadenas).¿Cómo puedo encontrar el índice del miembro más pequeño de este vector en Clojure?
(.indexOf [1 2 3 4 0 5]
(reduce #(if (< %1 %2) %1 %2) [1 2 3 4 0 5]))
¿Sería posible hacerlo de otra manera usando reducir?
Puede simplificarse ligeramente utilizando http://clojuredocs.org/clojure_contrib/clojure.contrib.seq-utils/indexed – opqdonut
Tenga en cuenta que no creo que el comentario anterior sea verdadero: la función 'indexada' no aparece para existir en Clojure 1.3 en. – candrews