Array sort_by Boolean - Ruby/Rails - Programmation
Marsh Posté le 06-11-2013 à 14:56:47
Il y a une vraie raison pour cette limitation?
Sans, il suffit de faire un partition sur :fast puis de regrouper des deux morceaux.
Avec, le tri de Ruby ne donnant pas de garanties de stabilité (et étant effectivement non stable) ta seule possibilité c'est de stocker les index de chaque objet dans un coin et de trier sur (:fast, index) pour stabiliser les records ayant le même :fast.
Accessoirement, retrier ton array à chaque addition me semble aussi inefficace que possible. Je pense que tu ferais mieux de trouver l'index où tu veux insérer ton élément, puis tu l'insères en place.
Marsh Posté le 30-10-2013 à 11:56:51
Salut,
j'essaye de trier une liste d'objets avec une méthode sur ces objets qui renvoit true ou false
ce qui donne:
[{:test=>"3", :fast=>true}, {:test=>"2", :fast=>false}, {:test=>"1", :fast=>false}]
et je cherche à obtenir:
[{:test=>"3", :fast=>true}, {:test=>"1", :fast=>false}, {:test=>"2", :fast=>false}]
Une idée? sans devoir créer une seconde liste.