0基础学Python(7) —— 快速排序
来源:互联网 发布:unity3d 室内灯光 编辑:程序博客网 时间:2024/05/18 02:35
今天学习了利用递归函数快速排序的方法,看起来十分简单,但是理解起来还是会稍微有一点绕。
def kp(ls): if len(ls) <=1: return ls mins = [] maxs = [] for i in ls[1:]: if i < ls[0]: mins.append(i) elif i >= ls[0]: maxs.append(i) return kp(mins) + ls[0:1] + kp(maxs)res = kp([9,18,7,6,15,4,3,22,11,10])print(res)兄弟连学python
def kp2(ll): if len(ll) <= 1: return ll return kp2([i for i in ll[1:] if i < ll[0]]) + ll[0:1] + kp2([i for i in ll[1:] if i >= ll[0]])print(kp2([9,7,3,1,65,2,4,65,8]))Python学习交流、资源共享QQ群:563626388
阅读全文