From: Giles Bowkett Date: 2006-11-10T15:59:13+09:00 Subject: Re: array sorting question you know, both these solutions, while much prettier than my code, produced messier results. here's what I used. stuff = data_objects[thing_name] if 2 < stuff.length midpoint = stuff.length / 2 left_side = stuff[0..midpoint] right_side = stuff[(midpoint + 1)..10000000] [left_side, right_side].each do |things| things.sort! {|x,y| x.inner_stuff.length <=> y.inner_stuff.length} end stuff = left_side + right_side.reverse end there's some graphing of the results, which is why I named the vars left side and right side. anyway, as I said, the suggestions were much much prettier than my code. but for some reason the results, in the graph this thing produces as output, were prettier. I really don't know why this ugly, hackish code produces prettier results, but it does. it's kind of weird that way. -- Giles Bowkett http://www.gilesgoatboy.org