日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

快速排序时间复杂度分析推导

發布時間:2023/12/10 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 快速排序时间复杂度分析推导 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最優情況(每次都能剛好二分):

確認第1個數要遍歷n個數

確認第2個數需要遍歷n/2個數,第3個數需要遍歷n/2個數

確認第4、5、6、7個數各需要遍歷n/4個數

將分段縮小到1,則需要分x次,即1=n/(2^x),x=log2n,即一共有log2n層

每一層都近似得看作遍歷n個數,則總遍歷個數為n*log2n

即最優情況時間復雜度為O(nlogn)

最差情況(每次都以最小或最大數為界點值,沒能將數組二分):

確認第1個數要遍歷n個數

確認第2個數要遍歷n-1個數

以此類推

等差求和得遍歷個數為n*(1+n)/2,時間復雜度為O(n^2)

這里也能看出為什么分段能提高效率:分段后,確認一個數所需遍歷的區間一直被指數級縮小;而不分段區間每次只縮小1。

歡迎指正

總結

以上是生活随笔為你收集整理的快速排序时间复杂度分析推导的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。