def quick_sort(ls):
return [] if ls == [] else quick_sort([y for y in ls[1:] if y < ls[0]]) + [ls[0]] + quick_sort([y for y in ls[1:] if y >= ls[0]])
個人認為,它這採用這樣子的寫法,在概念上雖然是正確的,不過稍微有點失去quick sort原本的精神。儘管如此,能看到如此簡潔的寫法依然令人驚豔!
演算法加上程式語言是個總充滿驚奇與意外的地方,所謂好鳥枝頭亦朋友,落花水面皆文章是再貼切不過的形容詞了。