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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

《算法》学习笔记2.1 初级排序算法

發布時間:2025/3/8 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《算法》学习笔记2.1 初级排序算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2.1 初級排序算法

    • 2.1.1 選擇排序
    • 2.1.2 插入排序
    • 2.1.3 選擇、插入排序比較
    • 2.1.4 希爾排序
    • 2.1.5 其他
      • 數據類型
      • 幾種典型的部分有序數組
      • 插入排序中的哨兵

2.1.1 選擇排序

1.思想
不斷地選擇剩余元素之中的最小者

2.1.2 插入排序

1.思想
插入已經有序的數組中的適當位置,其余元素在插入之前都向右移一位

2.最優適用情況

  • 部分有序的數組;
  • 小規模數組

2.1.3 選擇、插入排序比較

測試數組比較/次數交換/次數
選擇排序長度為NN2/2N
插入排序長度為N且主鍵不重復最壞:N2/2 最好:N2/2最壞:N-1 最好:0

比較兩種排序算法:sortCompare()

2.1.4 希爾排序

1.思想
使數組中任意間隔為h的元素有序的

2.最優適用情況

  • 中等大小的數組;
  • 需要解決一個排序問題而又沒有系統排序函數可用,可先用希爾,再考慮是否值得用其他替代

2.1.5 其他

數據類型

實現Comparable()接口

幾種典型的部分有序數組

  • 數組中的每個元素距離他的最終位置都不遠
  • 一個有序的大數組接一個小數組
  • 數組中只有幾個元素的位置不正確

插入排序中的哨兵

插入排序的實現中先找出最小的元素將其置于數組的最左邊,這樣就能去掉內循環的判斷條件j>o,這是一種常見的規避邊界測試的方法,能夠省略判斷條件的元素通常被稱為哨兵

總結

以上是生活随笔為你收集整理的《算法》学习笔记2.1 初级排序算法的全部內容,希望文章能夠幫你解決所遇到的問題。

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