起泡排序
来源:互联网 发布:数据透视日期按月汇总 编辑:程序博客网 时间:2024/04/26 23:21
起泡排序算法思路
有序概念
在由一组整数组成的序列A[0, n - 1]中,满足A[i - 1] < A[i]的相邻元素称作顺序的;否则是逆序的。不难看出,有序序列中每一对相邻元素都是顺序的,亦即,对任意1 < i < n都有A[i - 1] < A[i];反之,所有相邻元素均顺序的序列,也必然整体有序。
思路
由有序序列的上述特征,我们可以通过不断改善局部的有序性实现整体的有序:从前向后依次检查每一对相邻元素,一旦发现逆序即交换二者的位置。对于长度为n的序列,共需做n - 1次比较和不超过n - 1次交换,这一过程称作一趟扫描交换。每一趟扫描都至少会有一个元素就位。
排序过程中,所有元素朝各自最终位置亦步亦趋的移动过程,犹如气泡在水中的上下沉浮,起泡排序(bubble sort)算法也因此得名。
起泡排序实现
void bubble_sort(int data[], int n){ int sorted = 0; // false int i; while (!sorted) { sorted = 1; for (i = 1; i < n; i++) { if (data[i-1] > data[i]) { int temp = data[i]; data[i] = data[i-1]; data[i-1] = temp; sorted = 0; } n--; }}
0 0
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序
- 起泡排序/快速排序
- 排序:起泡排序法
- c++实现起泡排序
- 快速,起泡,选择排序
- Angularjs指令scope对象无法传值
- GameMaker 8.1游戏开发设计之《机智的UFO》
- asp.net MVC 中呈现指定区域下的分部视图
- 普通路由器配置ipv6
- [排列组合]Codeforces Round #324 (Div. 2)E - Anton and Ira
- 起泡排序
- IIS架設時候遇到的問題(.net 4.0和不識別json文件問題)
- 黑马程序员——java基础日记——多线程(2)——线程间通信与JDK1.5新特性
- RDLC IE也不见 按钮解决办法
- iOS中strong和weak指针
- php学习--6 类
- eclipse tomcat启动报错
- 计算两个日期相差的天数
- mysql replace