美文网首页
数据结构之选择排序

数据结构之选择排序

作者: 云胡同学 | 来源:发表于2019-01-27 18:10 被阅读0次

思路

将待排序的数分为两部分,一部分是已排序,另一部分是未排序。

将未排序部分中最小的数放在已排序部分后。

过程

选择排序

代码

#include<iostream>
using namespace std;
void selectSort(int a[], int len)
{
    int smallestIndex;
    int i, j, temp;
    for(i = 0; i < len - 1; i++)
    {
        smallestIndex = i;
        for(j = i+1; j < len; j++)
        {
            if(a[j] < a[smallestIndex])
            {
                smallestIndex = j;
            }
        }
        if(smallestIndex != i)
        {
            temp = a[i];
            a[i] = a[smallestIndex];
            a[smallestIndex] = temp;
        }
    }
}
int main()
{
    int a[6]={5,2,4,6,1,3};
    int len = sizeof(a) / sizeof(a[0]);
    selectSort(a, len);
    for(int i = 0; i < len; i++)
    {
        cout<<a[i]<<' ';
    }
    return 0;
}

相关文章

  • 2018-06-30

    排序算法之堆排序 堆排序是利用堆的数据结构而设计的一种排序算法,堆排序是一种选择排序。可以利用数组的特点快速定位制...

  • 数据结构之选择排序

    1.基本介绍 选择式排序也属于内部排序法,是从欲排序的数据中,按指定的规则选出某一元素,再依规定交换位置后达到排序...

  • 数据结构之选择排序

    思路 将待排序的数分为两部分,一部分是已排序,另一部分是未排序。 将未排序部分中最小的数放在已排序部分后。 过程 代码

  • 数据结构之排序算法-选择排序

    一、简述 从前往后为基准,第一个是第一小,第二个是第二小, 二、解决思路 1.将第一个值看成最小值2.将第一个值与...

  • C语言:关于数据的几种排序算法

    数据结构的排序算法有很多种。其中,快速排序、希尔排序、堆排序、直接选择排序不是稳定的排序算法;基数排序、冒泡排序、...

  • 排序

    一、选择排序 1.堆排序 定义:堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序可参考http...

  • 021-数据结构与算法-排序

    基础方法或者数据结构的定义: 冒泡排序 选择排序 插入排序 希尔排序 希尔排序思想: 希尔排序是把记录按下标的一定...

  • 玩转算法面试:(三)LeetCode数组类问题

    数组中的问题其实最常见。 排序:选择排序;插入排序;归并排序;快速排序查找:二分查找法数据结构:栈;队列;堆…… ...

  • 算法(3)- 数组

    数组中的问题其实最常见如:排序(选择排序、插入排序、归并排序、快速排序)、查找(二分查找法)、数据结构(栈、队列、...

  • 算法与数据结构路线图

    学习算法与数据结构,深刻理解计算机科学 排序算法:插入、冒泡、选择、希尔、快速、归并、堆排序、计数排序、桶排序、基...

网友评论

      本文标题:数据结构之选择排序

      本文链接:https://www.haomeiwen.com/subject/ygknjqtx.html