¿Hay una buena manera de rubí para eliminar duplicados en las listas enumerables (es decir, rechazo, etc.)Rubí eliminación de duplicados en las listas enumerables
Respuesta
Por matriz se puede utilizar el método uniq()
a = [ "a", "a", "b", "b", "c" ]
a.uniq #=> ["a", "b", "c"]
así que si sólo
(1..10).to_a.uniq
o
%w{ant bat cat ant}.to_a.uniq
, porque de todos modos casi todos los metho ds que implemente volverá como una clase Array.
Tenga en cuenta que '(1..10) .to_a.uniq' nunca podría ser otra cosa que tipeo desperdiciado ya que los rangos de definición no pueden tener elementos duplicados. (¿O hay algo de lo que estoy muy confundido?) – Telemachus
Tienes razón, nunca está duplicado. Solo da una idea. Agregué otra muestra, gracias. – Jirapong
Es técnicamente posible que un rango (de algo distinto de Fixnums) produzca elementos duplicados; todo lo que se requiere es que para algún objeto x, x.succ == x. Por ejemplo, una clase que represente números de Fibonacci tendría esta propiedad para el número 1. No estoy seguro de por qué lo haría, lo más probable es que sea un signo de locura, pero es * posible *. – Chuck
Bueno, la estrategia sería la de convertir a las matrices y eliminar los duplicados de las matrices . Por cierto las listas son matrices en ruby en cualquier caso, así que no estoy seguro de lo que quiere decir con "enumerable lists"
También estoy confundido por "lista enumerable". Si es una matriz, entonces es realmente fácil. Si es una clase de Enumerador, entonces se requiere pensar mucho más. – peterpengnz
Puede hacer una conversión a un conjunto, si el orden de los elementos no es importante.
Me gusta usar los operadores lógicos establecidos, si el objeto no tiene un método .uniq.
a = [2,3,3,5,5,5,6] # => [2, 3, 3, 5, 5, 5, 6]
a | a # => [2, 3, 5, 6]
- 1. Rubí enumerables inversa detectar
- 2. Python: la eliminación de duplicados de una lista de listas
- 3. Combinación de dos listas y eliminación de duplicados, sin eliminar duplicados en la lista original
- 4. Python - eliminación de elementos de las listas
- 5. Contar duplicados entre 2 listas
- 6. Combinar dos listas sin duplicados
- 7. la eliminación de duplicados del diccionario
- 8. Eliminación de registros duplicados de una tabla
- 9. Eliminación de caracteres duplicados de una cadena
- 10. la eliminación de duplicados utilizando comparaciones personalizados
- 11. Eliminación de registros duplicados en una tabla de BigQuery
- 12. Eliminación de duplicados de una cadena en Java
- 13. Comparar dos listas genéricas y eliminar duplicados
- 14. SQL: eliminación de registros duplicados en SQL Server
- 15. filas con Eliminación de duplicados en una matriz NumPy
- 16. Eliminación rápida de duplicados en numpy y python
- 17. Eliminación de elementos de las listas y todas las referencias a ellos
- 18. Forma más rápida de eliminar duplicados en listas Python
- 19. MySQL - Eliminación de duplicados y preservación de datos valiosos?
- 20. Igualdad entre dos enumerables
- 21. cómo combinar 2 Lista <T> con la eliminación de valores duplicados en C#
- 22. Eliminación de valores duplicados de una matriz de PowerShell
- 23. SQL: La eliminación de registros duplicados - aunque diferentes tipos
- 24. Prevenir Oracle menos el comunicado de la eliminación de duplicados
- 25. la eliminación de duplicados utilizando partición por SQL Server
- 26. Las extensiones enumerables de LINQ están ocultas en las cadenas ... ¿por qué y cómo?
- 27. Saltar sobre iteración en enumerables # recoger
- 28. ¿cómo trato las listas nulas como listas vacías en linq?
- 29. Django: Filtrado en el objeto relacionado, la eliminación de duplicados de los resultados
- 30. ¿Qué es "?" rubí en Rubí
¿Puede especificar qué tipo de lista tiene en mente que (1) * no es * una matriz pero (2) podría tener duplicados? Los rangos no pueden tener duplicados. – Telemachus
"listas enumerables" no está claro. ¿Es una variable de instancia de la clase Enumerator? – peterpengnz