天天学点Python Cookbook(五)

1. 三行代码的快速排序


任务:
你想证实,Python对函数式编程范式的支持比第一眼看上去的印象强多了。编程

解决方案:函数式编程

def quick_sort(l):
    if len(l) <= 1: return l
    return quick_sort([lt for lt in l[1:] if lt < l[0]]) + l[0:1] + \
            quick_sort([ge for ge in l[1:] if ge >= l[0]])

测试用例:函数

if __name__ == '__main__':
    l = [9,8,7,6,5,4,3,2,1]
    print(quick_sort(l))

测试结果:测试

clipboard.png

相关文章
相关标签/搜索