21xrx.com
2025-06-29 10:01:30 Sunday
登录
文章检索 我的文章 写文章
C++编程教程:选择排序实现
2023-07-05 13:38:30 深夜i     8     0
C++ 编程教程 选择排序

C++是一种流行的编程语言,广泛应用在计算机科学和软件开发领域。选择排序是C++中实现排序算法的一种简单方法,对于初学者来说是一个很好的练习。

选择排序是比较简单直观的排序算法,它的基本思想是:遍历数组中的所有元素,每次找到当前未排序部分中最小的元素,然后将其放置在已排序部分的末尾。这样不断重复这个过程,直到所有的元素都排好序为止。下面我们看看如何用C++实现选择排序。

首先,我们需要一个数组来存储要排序的数据:

int arr[] = 9 ;

接下来我们使用选择排序算法的实现代码:

// 选择排序实现
void selectionSort(int arr[], int n) {
  for (int i = 0; i < n - 1; i++) {
    int minIndex = i;
    for (int j = i + 1; j < n; j++) {
      if (arr[j] < arr[minIndex])
        minIndex = j;
      
    }
    swap(arr[i], arr[minIndex]);
  }
}
int main() {
  int n = sizeof(arr) / sizeof(arr[0]);
  selectionSort(arr, n);
  return 0;
}

在选择排序的C++实现中,我们使用了两个循环。外层循环遍历整个数组,内层循环找到当前未排序的最小元素,并保存其下标。在完成了内层循环后,我们使用swap函数交换未排序部分的第一个元素(arr[i])和当前未排序部分的最小元素(arr[minIndex])。

使用selectionSort函数来执行选择排序的C++代码如下:

int main() {
  int arr[] = 12;
  int n = sizeof(arr) / sizeof(arr[0]);
  cout << "排序前的数组: ";
  for (int i = 0; i < n; i++) {
    cout << arr[i] << " ";
  }
  selectionSort(arr, n);
  cout << endl;
  cout << "排序后的数组: ";
  for (int i = 0; i < n; i++) {
    cout << arr[i] << " ";
  }
  return 0;
}

这个程序会输出已排序的数组。选择排序的时间复杂度是O(n^2),不是最快的排序算法,但是对于简单的数列来说还是比较实用的。通过编写这个程序,您可以更深入地了解C++中的排序算法,并为将来的编程工作打下基础。

  
  

评论区