蓝桥杯省赛无忧 课件41 选择排序

发布时间:2024年01月24日

在这里插入图片描述

01 选择排序的思想

在这里插入图片描述

02 选择排序的实现

在这里插入图片描述

03 例题讲解

在这里插入图片描述

#include <iostream>
using namespace std;
void selectionSort(int arr[], int n) {
    int i, j, min_index;
    // 移动未排序数组的边界
    for (i = 0; i < n-1; i++) {
        // 找到未排序的部分中最小元素的索引
        min_index = i;
        for (j = i+1; j < n; j++) {
            if (arr[j] < arr[min_index]) {
                min_index = j;
            }
        }
        // 将找到的最小元素与未排序的部分的第一个元素交换
        if (min_index != i) {
            swap(arr[min_index], arr[i]);
        }
    }
}
int main() {
    int n;
    cin >> n;
    int treasures[n];
    for(int i = 0; i < n; i++) {
        cin >> treasures[i];
    }
    selectionSort(treasures, n);
    for(int i = 0; i < n; i++) {
        cout << treasures[i] << ' ';
    }
    cout << endl;
    return 0;
}
文章来源:https://blog.csdn.net/weixin_74774974/article/details/135830476
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。