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;
    }
  • 相关阅读:
    十三、Sklearn核密度估计
    十二、Sklearn高斯混合模型
    十一、Sklearn K-means聚类
    十、Sklearn流形学习
    九、Sklearn主成分分析
    八、Sklearn决策树与随机森林
    七、Sklearn支持向量机
    六、Sklearn线性回归
    五、Sklearn朴素贝叶斯分类
    $.each()和$().each()
  • 原文地址:https://www.cnblogs.com/xxaf/p/12677714.html
Copyright © 2011-2022 走看看