对数组进行排序,并选择最小数字?

时间:2012-11-28 19:58:20

标签: ruby arrays sorting

我创建了几个包含多个整数的数组。现在我希望整数排序,最低。比如说,我有一个数组:6,6,1,2,4,4,我希望它被排序:1,2,4,4,6,6。另外,无论如何,我可以让ruby识别4个最低值,并以某种方式显示它们?我试图用.show来解决这个问题,但由于我对编程很陌生,所以我对收到的结果感到困惑。

1 个答案:

答案 0 :(得分:5)

你试过这个吗?

a = [6,6,1,2,4,4]

p a.sort
#=> [1, 2, 4, 4, 6, 6]

sort将按升序排序。

如果您需要按降序排序,请使用带有块的sort

p a.sort {|a,b| b <=> a}
#=> [6, 6, 4, 4, 2, 1]

更新:不确定我是如何错过关于最低值的部分......

谢谢你@Mladen

a.sort.take(4)
#=> [1, 2, 4, 4]