21xrx.com
2024-12-22 21:33:35 Sunday
登录
文章检索 我的文章 写文章
C++编程教程:选择排序实现
2023-07-05 13:38:30 深夜i     --     --
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++中的排序算法,并为将来的编程工作打下基础。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复