冒泡排序
来源:互联网 发布:htpc 用什么软件 编辑:程序博客网 时间:2024/05/21 22:26
原理
冒泡排序的原理是相邻两个数比较,如果不满足排序规则,就交换这两个数。
这样一个循环下来,就能确定一个(相对最大/最小)数的位置。
一共n个循环下来,就能确定排列的顺序了。
实现
void BubbleSort(int a[],int n){int i,j,t;for(i=0;i<n;i++){for(j=0;j<n-i-1;j++){if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}}}
说明
i循环控制内循环次数,它是由带排序数列大小决定的。j循环每完成一次,确定一个数的位置。
n-i-1是因为
1.每次只要比较到倒数第二个数就行了(-1)
2.每次确定一个数的位置,i次循环之后就待确定的数-i
冒泡排序平均时间复杂度为O(n^2)
冒泡排序只在相邻的元素间比较,是一种稳定的排序算法
阅读全文
0 0
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 易商通配置文件init
- Kotlin学习之-5.4 可见性描述符
- 110个oracle常用函数总结
- spring +quartz
- linux的解压和压缩指令
- 冒泡排序
- 纯干货8 吴恩达新书《Machine_Learning_Yearning》_version_5.01分享
- 12C的PDB使用RMAN的4种完全恢复场景
- JAVA开发之 39-JAVA数组知识点(二)
- css预处理器less的分析
- vuejsLearn--- -- 怎么查看、修改、追加数据---->data对象
- 异形ROI的建立与使用
- C#中out和ref之间的区别
- Python-OpenCV 处理图像(一):基本操作 cv2