zoukankan      html  css  js  c++  java
  • 数组里面的选择排序与起泡排序比较

    起泡排序的思路是:将相邻两个数比较,将小的调到前头

    选择排序的思路是:将一个数和它后面的所有数比较,用最小的对换它,没有则不换

    核心代码:

    起泡排序

    for(j=0;j<9;j++)//进行9次循环,实现9趟比较
        {
            for(i=0;i<9-j;i++)//在每一趟中进行9-j次比较
            {
                if(a[i]>a[i+1])//相邻两个数比较
                {
                    t=a[i];
                    a[i]=a[i+1];
                    a[i+1]=t;
                }
            }
        }

    选择排序

        for(i=1;i<=9;i++)
        {
            for(j=i+1;j<=10;j++)/*for(i=1;i<10;i++)//进行9次循环,实现9趟比较
                                 {
                                 for(j=0;j<10-i;j++)//在每一趟中进行9-j次比较*/
            {
                if(a[i]>a[j])    /*  2-10    0-8      */
                {                   /*  3-10    0-7      */
                    t=a[i];         /*  4-10    0-6      */
                    a[i]=a[j];      ...
                    a[j]=t;         /*  9-10    0-1     */
                }
            }
        }

    通过对变量i赋值,比较两者变量j的取值范围,可知两者在遍历的时候j的范围:一个是10(范围的大数)不变,一个是0(范围的小数)不变。

    比较的对象 if(a[i]>a[i+1])//相邻两个数比较if(a[i]>a[j]) ;内层循环变量一个是i,一个是j; 

    其实质是一样的。

  • 相关阅读:
    Photoshop 基础七 位图 矢量图 栅格化
    Photoshop 基础六 图层
    Warfare And Logistics UVALive
    Walk Through the Forest UVA
    Airport Express UVA
    Guess UVALive
    Play on Words UVA
    The Necklace UVA
    Food Delivery ZOJ
    Brackets Sequence POJ
  • 原文地址:https://www.cnblogs.com/haijiabei/p/4861778.html
Copyright © 2011-2022 走看看