网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 C语言冒泡排序
内容
    冒泡排序基本思想
    将n个记录看作按纵向排列,每趟排序时自下至上对每对相邻记录进行比较,若次序不符合要 求(逆序)就交换。每趟排序结束时都能使排序范围内关键字最小的记录象一个气泡一样升到表上端的对应位置,整个排序过程共进行n-1趟,依次将关键字最 小、次小、第三小…的各个记录“冒到”表的第一个、第二个、第三个…位置上。
    初态 第1趟 第2趟 第3趟 第4趟 第5趟 第6趟 第7趟
    3812121212121212
    2038202020202020
    4620382525252525
    3846253838383838
    7438463838383838
    9174384646464646
    1291747474747474
    2525919191919191
    /*
    Title: 冒泡排序
    Author: Li Aimin
    Date: May 2007
    算法功能:冒泡排序算法实现将一个长度为n的线性表r上的所有元素按关键字升序排列。
    */
    #include<stdio.h>
    void bubblesort(int r[],int n)
    { /*elements are stored in r[1] to r[n]*/
    int i,j,flag;
    int temp;
    flag=1;
    i=1;
    while((i<n)&&(flag==1)) /*外循环控制排序的总趟数*/
    { flag=0;
    for(j=n;j>i;j--) /*内循环控制一趟排序的进行*/
    if(r[j]<r[j-1]) /*相邻元素进行比较,若逆序就交换*/
    {
    flag=1;
    temp=r[j];
    r[j]=r[j-1];
    r[j-1]=temp;
    }
    i++;
    }
    } /*bubblesort*/
    void show(int r[] , int n)
    {
    /*elements are stored in r[1] to r[n]*/
    int i;
    for(i=1;i<=n;i++)
    printf(" %d ",r[i]);
    printf("n");
    }
    void main()
    {
    int a[9201],i;
    for(i=0;i<9201;i++)
    a[i]=9201-i;
    //show(a,100000);
    bubblesort(a,9200);
    show(a,9200);
    }
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/15 5:18:42