zoukankan      html  css  js  c++  java
  • 冒泡排序

      

    思想:一个待排数组从第一个元素开始,每个元素都与自己后一个元素进行比较(  s[i]>s[i+1] //从小到大排序  ),大于后一个元素时两元素进行互换,以此类推,第一趟排序后整个数组中最大的元素已排在最末位。重复以上步骤。

    初始数组:

        0    1    2    3    4     5    6    7    8    9

      9  4  6  1  3  2  5  7  8  0

    第一趟排序后:

        0    1    2    3    4     5    6    7    8    9

      4  6  1  3  2  5  7  8  0  9

    第二趟排序后:

        0    1    2    3    4     5    6    7    8    9

      4  6  1  2  3  5  7  0  8  9

    每次排序后已排好元素不再进行排序,以此类推,当只剩最后一位时排序已完成。

    c代码:

    #include <stdio.h>
    #include <stdlib.h>
    
    void BubbleSort(int n,int s[])
    {
        int temp;
        for(int i=n-1; i>0; i--)  //第一层循环是去掉已排好的元素
        {
            for(int j=0; j<i; j++)
            {
                if(s[j]>s[j+1])
                {
                    temp=s[j];
                    s[j]=s[j+1];
                    s[j+1]=temp;
                }
            }
        }
    }
    int main()
    {
        int n;
        int s[50];
        scanf("%d",&n);
        for(int i=0; i<n; i++)
        {
            scanf("%d",&s[i]);
        }
        BubbleSort(n,s);
        for(int i=0;i<n;i++)
        {
            printf("%d ",s[i]);
        }
        return 0;
    }
  • 相关阅读:
    布局页js文件问题
    sqlite如何更改表结构
    css各种样式
    layUI订单实现思路
    layUI使用总结
    easyui点击行内编辑,怎么获取行数据并赋值
    404
    PTA C语言作业
    python一行代码格式化日期
    校园网跨网段共享文件Samba+SSH
  • 原文地址:https://www.cnblogs.com/xxaf/p/12677714.html
Copyright © 2011-2022 走看看