February 2, 2004 Intro to Ruby Slide #11
Prev Next

Schwartzian Transform

     animals = %w(dog horse ox duck)
     x = animals.sort{ |a, b| a.length <=> b.length }
     temp1 = animals.map{ |a| [a.length, a] }
     temp2 = temp1.sort{ |a,b| a[0] <=> b[0] }
     x = temp2.map{ |a| a[1] }
     x = animals.map{|a| [a.length, a]}.sort{|a,b| a[0]<=>b[0]}.map{|a| a[1]}
     x = animals.map{|a| [a.length, a]}.sort.map{|a| a[1]}
     @x = map {$_->[1]} sort {$a->[0] <=> $b->[0]} map {[length $_, $_]} @animals;
     x = animals.sort_by{|a| a.length}


Prev Copyright © 2004 Walter C. Mankowski Next