算法-排序-选择排序

2021/6/19 9:56:49

本文主要是介绍算法-排序-选择排序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

选择排序

特点:原址排序,比较排序,时间复杂度O(n^2)

//
// Created by 许加权 on 2021/6/19.
//

#include <iostream>

void selection_sort(int *arr,int start,int end)
{
    for (int i = start + 1; i < end+1; ++i) {
        for (int j = i; j < end+1; ++j) {
            if(arr[j]<arr[i-1])
            {
                int temp = arr[j];
                arr[j] = arr[i-1];
                arr[i-1] = temp;
            }
        }
    }
}

void show(int *arr,int length)
{
    for(int i=0;i<length;i++)
    {
        std::cout<<arr[i]<<" ";
    }
    std::cout<<std::endl;
}
int main()
{
    int arr[] = {1,4,6,9,2,5,10,3,7};
    show(arr,sizeof(arr)/sizeof (int));
    selection_sort(arr,0,sizeof(arr)/sizeof (int)-1);
    show(arr,sizeof(arr)/sizeof (int));
    return 0;
}


这篇关于算法-排序-选择排序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程