當前位置:
首頁 >
快速排序--Python实现
發布時間:2024/9/21
35
豆豆
生活随笔
收集整理的這篇文章主要介紹了
快速排序--Python实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
快速排序算法:
1、選擇一個基準數
2、小于基準數的放左邊,大于基準數的放右邊
3、利用遞歸的方法針對左邊的數據進行快速排序,再對右邊的數據進行快速排序
4、遞歸停止的條件:數組為空或者只有一個元素
時間復雜度為:O(nlogn),遠小于選擇排序
def quick_sort(list):if(len(list) < 2):return listelse:base = list[0]less = [i for i in list[1:] if i <= base]greater = [i for i in list[1:] if i > base]return quick_sort(less) + [base] + quick_sort(greater)if __name__ == "__main__":list = [32, 13, 28, 5, 23, 56, 12, 78, 34]result = quick_sort(list)print(result)
1、選擇一個基準數
2、小于基準數的放左邊,大于基準數的放右邊
3、利用遞歸的方法針對左邊的數據進行快速排序,再對右邊的數據進行快速排序
4、遞歸停止的條件:數組為空或者只有一個元素
時間復雜度為:O(nlogn),遠小于選擇排序
def quick_sort(list):if(len(list) < 2):return listelse:base = list[0]less = [i for i in list[1:] if i <= base]greater = [i for i in list[1:] if i > base]return quick_sort(less) + [base] + quick_sort(greater)if __name__ == "__main__":list = [32, 13, 28, 5, 23, 56, 12, 78, 34]result = quick_sort(list)print(result)
?
轉載于:https://www.cnblogs.com/fredkeke/p/9232204.html
總結
以上是生活随笔為你收集整理的快速排序--Python实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 『Python × C++』函数传参机制
- 下一篇: Python-day06-2018.7.