21xrx.com
2024-11-25 00:17:33 Monday
登录
文章检索 我的文章 写文章
C++选择排序
2023-07-10 11:25:50 深夜i     --     --
C++ 选择排序 排序算法 数组 指针

C++选择排序是一种简单而有效的排序算法,在排序过程中,它会不断地寻找未排序的序列中的最小值,并将其插入已排序序列的末尾。由于选择排序算法只涉及相邻元素的交换,因此它是一种稳定的排序算法,时间复杂度为O(n²)。

选择排序的实现思路大致如下:

1. 在未排序的序列中找到最小值。

2. 将最小值和当前位置进行交换。

3. 对未排序的序列重复以上步骤,直到排序完成。

以下是使用C++实现选择排序的示例代码:


#include<iostream>

using namespace std;

void selectionSort(int arr[], int n) {

  int min_index;

  for (int i = 0; i < n - 1; i++) {

    min_index = i;

    for (int j = i + 1; j < n; j++) {

      if (arr[j] < arr[min_index])

        min_index = j;

      

    }

    swap(arr[i], arr[min_index]);

  }

}

int main() {

  int arr[5] = 2;

  selectionSort(arr, 5);

  for (int i = 0; i < 5; i++) {

    cout << arr[i] << " ";

  }

  return 0;

}

该代码中,selectionSort函数接受一个整型数组和数组长度作为参数,然后通过嵌套的for循环遍历未排序序列,找到未排序序列中的最小值,并将其与当前位置交换,重复以上步骤,最终得到一个按升序排列的数组。

总而言之,C++选择排序是一个简单、稳定且效率较高的排序算法,它可以被用于各种应用场景,特别是处理较小的数据集时,表现尤为出色。如果您正在处理中小型数据集,并且想要快速编写一个排序算法,那么选择排序是一个不错的选择。

  
  

评论区

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