程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++選擇排序算法實例

C++選擇排序算法實例

編輯:關於C++

C++選擇排序算法實例。本站提示廣大學習愛好者:(C++選擇排序算法實例)文章只能為提供參考,不一定能成為您想要的結果。以下是C++選擇排序算法實例正文


選擇排序

選擇排序是一種簡略直不雅的排序算法,它的任務道理以下。起首在未排序序列中找到最小(年夜)元素,寄存到排序序列的肇端地位,然後,再從殘剩未排序元素中持續尋覓最小(年夜)元素,然後放到已排序序列的末尾。以此類推,直到一切元素均排序終了。

選擇排序的重要長處與數據挪動有關。假如某個元素位於准確的終究地位上,則它不會被挪動。選擇排序每次交流一對元素,它們傍邊至多有一個將被移到其終究地位上,是以對n個元素的表停止排序總共停止至少n-1次交流。在一切的完整依附交流去挪動元素的排序辦法中,選擇排序屬於異常好的一種。選擇排序的時光龐雜度也為O(n^2)。

代碼完成

#include <iostream>
using namespace std;
 
void SelectSort(int arr[], int length)
{
     int temp, min;
     for (int i = 0; i < length - 1; ++i)
     {
          min = i;
 
          // 尋覓最小值
          for (int j = i + 1; j < length; ++j)
          {
               if (arr[j] < arr[min])
                    min = j;
          }
 
          // 交流
          if (min != i)
          {
               temp = arr[i];
               arr[i] = arr[min];
               arr[min] =temp;
          }
     }
}
 
int main()
{
     int arr[10] = {2, 4, 1, 0, 8, 4, 8, 9, 20, 7};
 
     SelectSort(arr, sizeof(arr) / sizeof(arr[0]));
 
     for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); ++i)
     {
          cout<<arr[i]<<" ";
     }
     cout<<endl;
 
     return 0;
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved