美文网首页
ios 依次选出数组最小的数放到数组的前面

ios 依次选出数组最小的数放到数组的前面

作者: 行走在北方 | 来源:发表于2021-08-10 10:48 被阅读0次

首先从数组的第二个元素开始往后遍历,找出最小的数放到第一个位置。再从剩下数组中找出最小的数放到第二个位置。以此类推,直到数组有序

void SelectSort(int *a, int n) {
    for (int i = 0; i < n; i++)
    {
        int key = i;    //    临时变量用于存放数组最小值的位置
        for (int j = i + 1; j < n; j++) {
            if (a[j] < a[key]) {    
                key = j;    //    记录数组最小值位置
            }
        }
            if (key != i)
            {
                int tmp = a[key]; a[key] = a[i]; a[i] = tmp;    //    交换最小值
            }
        
    }
}

int main() {
    int a[] = { 12,4,15,2,6,22,8,10,1,33,45,24,7 };
    int n = sizeof(a) / sizeof(int);
    SelectSort(a, n);
    return 0;
}

相关文章

  • ios 依次选出数组最小的数放到数组的前面

    首先从数组的第二个元素开始往后遍历,找出最小的数放到第一个位置。再从剩下数组中找出最小的数放到第二个位置。以此类推...

  • 剑指offer_5_6_旋转数组最小数字

    旋转数组最小数字 解法一: 暴力 因为是有排列顺序的,所以依次遍历数组,一直找到比数组第一个数小的数,则为反转数组...

  • 排序算法--选择排序

    选择排序基本思想如下: 遍历未排序数组,选出最小值,放在数组开头 在剩余未排序数组中,选出最小值,排在已排序数组的...

  • 算法系列之-选择排序(一)

    所谓的选择排序,就是在一堆数中依次选出最小数,选择排序的主要思想是从数组中取出一个数,和后面的每个数进行比较,直到...

  • 选择排序

    介绍   选择排序就是在需要排序的数组中找出最小的元素,将它排在新数组的最前面,整体是从左向右依次排序。每遍历一次...

  • iOS开发 - 获取数组中最大数,最小数

    需求:获取数组中最大的数,最小数其实就是一排序算法直接上方法 同理获取数组中最小的数

  • 数组

    1.请编写函数fun,该函数的功能是:将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数 组中数据...

  • array-布尔类型索引

    问题:给一个数组,选出数组中所有大于5的数 原理 求取大于5的偶数

  • 选择排序OC

    算法的个人理解: 实现思路是从数组中取出每一个元素,依次和数组中剩余的元素进行比较,找出数组中最大或者最小的...

  • 209. Minimum Size Subarray Sum

    题目:求数组中和大于某数的最小子数组的长度Given an array of n positive integer...

网友评论

      本文标题:ios 依次选出数组最小的数放到数组的前面

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