<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      【算法】選擇排序(Selection Sort)(二)

      選擇排序(Selection Sort)

      選擇排序(Selection-sort)是一種簡單直觀的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再從剩余未排序元素中繼續尋找最小(大)元素,然后放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。

      1.算法描述

      n個記錄的直接選擇排序可經過n-1趟直接選擇排序得到有序結果。具體算法描述如下:

      • 初始狀態:無序區為R[1..n],有序區為空;
      • 第i趟排序(i=1,2,3…n-1)開始時,當前有序區和無序區分別為R[1..i-1]和R(i..n)。該趟排序從當前無序區中-選出關鍵字最小的記錄 R[k],將它與無序區的第1個記錄R交換,使R[1..i]和R[i+1..n)分別變為記錄個數增加1個的新有序區和記錄個數減少1個的新無序區;
      • n-1趟結束,數組有序化了。

      2.動圖演示

      3.代碼實現

      //javascript實現
      function selectionSort(arr) {
          var len = arr.length;
          var minIndex, temp;
          for (var i = 0; i < len - 1; i++) {
              minIndex = i;
              for (var j = i + 1; j < len; j++) {
                  if (arr[j] < arr[minIndex]) {    // 尋找最小的數
                      minIndex = j;                // 將最小數的索引保存
                  }
              }
              temp = arr[i];
              arr[i] = arr[minIndex];
              arr[minIndex] = temp;
          }
          return arr;
      }
      
      //java實現
      public class SelectionSort implements IArraySort {
      
          @Override
          public int[] sort(int[] sourceArray) throws Exception {
              int[] arr = Arrays.copyOf(sourceArray, sourceArray.length);
      
              // 總共要經過 N-1 輪比較
              for (int i = 0; i < arr.length - 1; i++) {
                  int min = i;
      
                  // 每輪需要比較的次數 N-i
                  for (int j = i + 1; j < arr.length; j++) {
                      if (arr[j] < arr[min]) {
                          // 記錄目前能找到的最小值元素的下標
                          min = j;
                      }
                  }
      
                  // 將找到的最小值和i位置所在的值進行交換
                  if (i != min) {
                      int tmp = arr[i];
                      arr[i] = arr[min];
                      arr[min] = tmp;
                  }
      
              }
              return arr;
          }
      }
      

      4.算法分析

      表現最穩定的排序算法之一,因為無論什么數據進去都是O(n2)的時間復雜度,所以用到它的時候,數據規模越小越好。唯一的好處可能就是不占用額外的內存空間了吧。理論上講,選擇排序可能也是平時排序一般人想到的最多的排序方法了吧。

      posted @ 2022-03-15 22:54  HZX↑  閱讀(61)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产精品一区二区三区三级| 久久这里都是精品一区| 亚洲综合无码一区二区| 国产精品va无码一区二区| 精精国产xxxx视频在线| 久久一区二区三区黄色片| 宁南县| 国产精品国语对白一区二区| 国产精品亚洲中文字幕| 国产精品一区二区国产馆| 国产成人精品午夜福利| 国产精品无遮挡在线观看| 亚洲精品美女久久7777777| 亚洲中文字幕有综合久久| xxxx丰满少妇高潮| 国产激情艳情在线看视频| 日日碰狠狠添天天爽超碰97| 亚洲精品一二三在线观看| 国产一卡2卡三卡4卡免费网站| 国产精品高清中文字幕| www亚洲精品| 香蕉久久久久久久AV网站| 国产偷国产偷亚洲综合av| 日韩亚洲国产综合高清| 久久亚洲日韩精品一区二区三区| 女主播扒开屁股给粉丝看尿口| 国产精品综合一区二区三区| 亚洲精中文字幕二区三区| 精品偷拍一区二区三区在| 国产精品免费久久久免费| 999国产精品999久久久久久| 久久99精品国产99久久6男男| 中文日产幕无线码一区中文| 久99久热这里只有精品| 综合久青草视频在线观看| 成人永久免费A∨一级在线播放| 国产精品视频一区二区三区不卡 | 亚洲AV高清一区二区三区尤物| 亚洲 日本 欧洲 欧美 视频| 欧美性受xxxx黑人猛交| 国产亚洲999精品aa片在线爽|