冒泡排序算法(优化版)
来源:互联网 发布:校园网络借贷主题班会 编辑:程序博客网 时间:2024/05/20 07:59
#include<stdio.h>#include<stdlib.h>#include<time.h>//排序用到的结构和函数#define MAXSIZE 20typedef struct{ int r[MAXSIZE+1]; //用于存储要排序的数组,r[0]用作哨兵或者临时变量 int length; //用于记录顺序表的长度}SqList;//交换L中数组r的下标为i和j的值void swap(SqList * L,int i,int j){ int temp=L->r[i]; L->r[i]=L->r[j]; L->r[j]=temp;}//冒泡排序(优化版)void BubbleSort(SqList * L){ int i,j; bool flag=true; for(i=1;i<L->length && flag;i++) //若flag为true则退出循环 { flag=false; for(j=L->length-1;j>=i;j--) { if(L->r[j]>L->r[j+1]) { swap(L,j,j+1); flag=true; //若有交换,则flag为true } } }}//输出元素void print(SqList * L){ for(int i=1;i<=L->length;i++) { printf("%d ",L->r[i]); } printf("\n");}int main(){ int n; SqList L; L.length=0; //初始化length的长度 printf("请输入元素个数:\n"); scanf("%d",&n); srand(0); for(int i=1;i<=n;i++) { L.r[i]=rand()%100+1; L.length++; } printf("排序前的数组: "); print(&L); BubbleSort(&L); printf("排序后的数组: "); print(&L);}
0 0
- 冒泡排序算法(优化版)
- 排序算法之冒泡排序 - 优化版
- 排序算法之优化版冒泡排序
- 优化冒泡排序算法
- Rhyme/算法 冒泡排序优化版
- 经典排序算法----冒泡排序算法及其优化(稳定)
- 冒泡排序算法的优化
- 冒泡排序的优化算法
- 冒泡排序算法及其优化
- java 冒泡排序算法优化
- 冒泡排序算法以优化
- 冒泡排序及算法优化
- 冒泡排序算法及其优化
- 冒泡排序算法及其优化
- 冒泡排序算法及优化
- 排序算法 优化冒泡排序算法
- 排序算法之希尔(优化冒泡)排序
- 排序算法(四)冒泡排序及其优化
- 百度地图API制作类似 百度地图的路线导航界面并实现简单的路线规划功能
- 动态规划:从新手到专家
- 冒泡排序算法(初级版)
- 冒泡排序算法
- SpringMVC输入校验
- 冒泡排序算法(优化版)
- 33.对学生结构体的数据进行修改
- 不到100行代码实现一个简单的推荐系统
- Sidekiq基础的基础
- C# PrintDocument 打印
- 可重入函数与不可重入函数概念以及编写规范
- Sparse Representation Classification速度记录
- java笔记06 数组
- windows下利用qemu学习开发linux