日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【算法基础笔记】常用的排序算法的时间、空间复杂度,部分排序算法原理

發布時間:2025/3/15 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【算法基础笔记】常用的排序算法的时间、空间复杂度,部分排序算法原理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

冒泡排序

  • 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。
  • 對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最后一對。在這一點,最后的元素應該會是最大的數。
  • 針對所有的元素重復以上的步驟,除了最后一個。
  • 持續每次對越來越少的元素重復上面的步驟,直到沒有任何一對數字需要比較
  • 堆排序

  • 將初始待排序關鍵字序列(R1,R2....Rn)構建成大頂堆,此堆為初始的無須區;
  • 將堆頂元素R[1]與最后一個元素R[n]交換,此時得到新的無序區(R1,R2,......Rn-1)和新的有序區(Rn),且滿足R[1,2...n-1]<=R[n];?
  • 由于交換后新的堆頂R[1]可能違反堆的性質,因此需要對當前無序區(R1,R2,......Rn-1)調整為新堆,然后再次將R[1]與無序區最后一個元素交換,得到新的無序區(R1,R2....Rn-2)和新的有序區(Rn-1,Rn)。不斷重復此過程直到有序區的元素個數為n-1,則整個排序過程完成。
  • 計數排序

  • 遍歷一遍整個數組,找出數組中最大數和最小數之間的差距 range,然后開辟一個大小為range的數組count并全部初始化為0;
  • 再次遍歷整個數組,把每個元素的值映射到count的下標index,每映射到一個index,就把count[index]加一;
  • 根據統計結果count,把數寫會原數組,某個值index要寫count[index]遍到原數組,這樣,原數組就有序了
  • ?

    轉載于:https://www.cnblogs.com/65Seeker/p/10229152.html

    總結

    以上是生活随笔為你收集整理的【算法基础笔记】常用的排序算法的时间、空间复杂度,部分排序算法原理的全部內容,希望文章能夠幫你解決所遇到的問題。

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