一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java數據結構與算法之簡單選擇排序詳解

java數據結構與算法之簡單選擇排序詳解

2020-09-23 13:45android小豬 Java教程

這篇文章主要介紹了java數據結構與算法之簡單選擇排序,結合實例形式分析了選擇排序的原理、實現方法與相關操作技巧,需要的朋友可以參考下

本文實例講述了java數據結構與算法之簡單選擇排序。分享給大家供大家參考,具體如下:

在前面的文章中已經講述了交換類的排序算法,這節中開始說說選擇類的排序算法了,首先來看一下選擇排序的算法思想;

選擇排序的基本算法思想:

每一趟在 n-i+1 (i=1,2,3,……,n-1)個記錄中選取關鍵字最小的記錄作為有序序列中第i個記錄。

簡單選擇排序:

設所排序序列的記錄個數為n。i取1,2,…,n-1,從所有n-i+1個記錄(Ri,Ri+1,…,Rn)中找出排序碼最小的記錄,與第i個記錄交換。執行n-1趟 后就完成了記錄序列的排序。

算法實現代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package exp_sort;
public class SimpleSelectSort {
  static int i;
  static int temp;
  public static void selectSort(int array[]) {
    for (i = 0; i < array.length; i++) {
      int k = i;  //記錄當前位置
      for (int j = i + 1; j < array.length; j++) {
        if (array[j] < array[k]) {   //找出最小的數,并用k指向最小數的位置
          k = j;
        }
      }
            //交換最小數array[k]與第i位上的數
      if (k != i) {
        temp = array[i];
        array[i] = array[k];
        array[k] = temp;
      }
    }
  }
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    int array[] = { 38, 62, 35, 77, 55, 14, 35, 98 };
    selectSort(array);
    for (int i = 0; i < array.length; i++) {
      System.out.print(array[i] + " ");
    }
    System.out.println("\n");
  }
}

算法分析:

在此排序過程中,需要移動記錄的次數比較少。最好情況下,即待排序記錄初始狀態就已經是正序排列了,則不需要移動記錄;最壞情況下,即待排序記錄初始狀態是按照逆序排列的,則需要移動次數最多是:3(n-1)。排序過程中需要進行的比較次數與初始狀態下待排序的記錄序列的排列情況無關。當i=1時,需要進行n-1次比較;當i=n時,共需要進行的比較次數是:n(n-1)/2,即比較操作的時間復雜度是:O(n^2),進行移動操作的時間復雜度為O(n);該排序是不穩定排序

希望本文所述對大家java程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 97青草香蕉依人在线播放 | 色姑娘导航 | 脱了白丝校花的内裤猛烈进入 | 91在线免费看 | 国产原创一区二区 | 成人黄色免费网站 | 91伊人网| 男人与雌性宠物交啪啪小说 | 久久久久久免费高清电影 | 操儿媳小说 | 精品一区二区三区波多野结衣 | 久久黄色小视频 | 精品亚洲综合久久中文字幕 | 236zz宅宅最新伦理 | 国产美女久久精品香蕉69 | 欧美区一区 | 无人视频在线观看完整版高清 | 九九精品免视看国产成人 | 草草线在成年免费视频网站 | 国产亚洲sss在线播放 | 嫩草影院永久入口在线观看 | 亚洲欧洲日产国码无码av | 99re在线视频免费观看 | 国产chinese男同gay | 婚前试爱免费看 | 日韩欧美国产一区二区三区 | 极品ts赵恩静和直男激战啪啪 | 91制片厂制作传媒网站破解 | gogort人体的最新网站 | 国产亚洲人成网站在线观看不卡 | 日本在线看 | 日本大尺度激情做爰叫床 | 99re热这里只有精品视频 | 国产精品久久久久jk制服 | 国产精品香蕉夜间视频免费播放 | 夫承子液by免费阅读 | 亚洲人成网站在线观看播放青青 | 好男人好资源在线观看免费 | 国产成人看片免费视频观看 | 日本无遮挡吸乳视频看看 | 午夜无码片在线观看影院 |