python版的快速排序算法源码

发布时间:2020-07-08 23:30:06 作者:App_in
来源:网络 阅读:494

下面的代码段是关于python版的快速排序算法的代码,应该对各位朋友有用途。

def qsort(L):
    return ((qsort([x for x in L[1:] if x < L[0]]) + L[0:1] +
             qsort([x for x in L[1:] if x >= L[0]])
            ) if L
            else [])

版本2

def qsort3(arr, l, r):  
    def swap(arr, s, d):  
        if s != d:  
            tmp = arr[s]  
            arr[s] = arr[d]  
            arr[d] = tmp  
    if l >= r:  
        return      
    m = l  
    for i in range(l, r):  
        if arr[i] <= arr[r]:  
            swap(arr, i, m)  
            m += 1  
    swap(arr, m, r)  
    qsort3(arr, l, m-1)  
    qsort3(arr, m+1, r)  
    return arr  

版本3

def qsort2(L):  
    if len(L)<=1:  
        return L  
    pivot=L[0]  
    less=    [x for x in L if x<pivot]  
    equal=   [x for x in L if x==pivot]  
    greater= [x for x in L if x>pivot]  
    return qsort2(less)+equal+qsort2(greater) 
推荐阅读:
  1. nginx_源码版_nginx.conf
  2. 飞行熊猫游戏源码android版

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

排序 算法

上一篇:UITableView的一些事儿

下一篇:疯狂的PHP学习之路

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》