脚本专栏 
首页 > 脚本专栏 > 浏览文章

Ruby一行代码实现的快速排序

(编辑:jimmy 日期: 2025/5/19 浏览:3 次 )

复制代码 代码如下:
def quick_sort(a)

    return a if a.size < 2

    (x = a.pop) ?  quick_sort(a.select{|i| i <=x }) + [x] + quick_sort(a.select{|i| i > x}) : []

end

array = [72,6,57,88,60,42,83,73,42,48,85]

p quick_sort(array)    #=> [6, 42, 42, 48, 57, 60, 72, 73, 83, 85, 88]

上一篇:Ruby中require、load、include、extend的区别介绍
下一篇:Ruby实现生产者和消费者代码分享