• 2)选择排序算法


    (1)原理讲解:

        假如我是升序的:

            

     

      选择排序,就是我拿一个数作为最初的参照点,(一般,就是拿第一个作为参照点)

          (1)  10和7比较, 10比7大,然后交换  顺序变成:710,1,9~~~~~

          (2)  7和1比较,7比1大,然后交换,顺序变成:1,10,7,9~~~~~

          (3)  1和9比较,9比1大,不用交换,顺序还是1,10,7,9~~~~

          (4)   1和4比,和6比,和2比,和3比都小,所以顺序不变

          (5)  1和0比,1比0大,然后交换,顺序变成:0,10,7,9,4,6,7,3,2,1

      上面是第一轮比较,然后,你会发现,第一轮的第一个数字是整个数字的最小的一个

        然后按照同样的思路,进行第二轮排序:~~~~~~~~~~~~~~~~~~
        然后按照同样的思路,进行第三轮排序:~~~~~~~~~~~~~~~~~~~~~~

    ~~~~~~~~~~~~~~~~等等:
        基本代码实现:

     1  1 int a[]={10719467320};
     2  2 for(i=0;i<n;i++)//这个是进行了几轮
     3  3 {
     4  4     for(j=i+1;j<n,j++)//这个是进行每轮的比较
     5  5         {
     6  6     if(a[i]>a[j])//按照升序排的
     7  7 {
     8  8     t=a[i];
     9  9     a[i]=a[j];
    10 10     a[j]=t;
    11 11 
    12 12 }
    13 13 
    14 14 }
    15 21 }

    以后看别人带有算法的代码,基本思路就是:
      1.看流程

      2.每个语句的功能

      3.试数  就是一个数,一个数的试一试,不要嫌麻烦

      4.调试

      5.模仿改  要学会模仿

    (1)如果数组作为参数,那么数组形参退化为指针

        比如:void Print_array(int a[100],int n)

            这个100,其实写不写,无所谓  

          上面的函数可以写成:

          void Print_array(int *a,int n)

  • 相关阅读:
    react 滑动删除组件
    004-Java进制转换
    003-JavaString数据类型
    002-Java数据类型
    001-Java命名规范
    【leetcode】804
    【MySQL】基本语句
    【python】
    hiveSql常见错误记录
    【数据库】-基本特性
  • 原文地址:https://www.cnblogs.com/xiaoyoucai/p/8007275.html
Copyright © 2020-2023  润新知