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

Florence ·
更新时间:2024-09-21
· 786 次阅读

代码如下:
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版的简单实现Ruby实现的各种排序算法Ruby实现的合并排序算法Ruby实现的3种快速排序算法ruby实现的插入排序和冒泡排序算法Ruby实现插入排序算法及进阶的二路插入排序代码示例



需要 登录 后方可回复, 如果你还没有账号请 注册新账号