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

joh*_*ohk 1 ruby arrays sorting

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

小智 5

你试过这个吗?

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

p a.sort
#=> [1, 2, 4, 4, 6, 6]
Run Code Online (Sandbox Code Playgroud)

sort 将按升序排序.

如果您需要按降序排序,请使用sort块:

p a.sort {|a,b| b <=> a}
#=> [6, 6, 4, 4, 2, 1]
Run Code Online (Sandbox Code Playgroud)

更新:不知道我是如何错过关于最低价值的部分...

谢谢@Mladen

a.sort.take(4)
#=> [1, 2, 4, 4]
Run Code Online (Sandbox Code Playgroud)