冒泡排序算法
来源:互联网 发布:什么是采集软件 编辑:程序博客网 时间:2024/04/30 02:18
冒泡排序算法的运作如下:
1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
3.针对所有的元素重复以上的步骤,除了最后一个。
4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
代码实现:
#include <stdio.h>
void BubSort(int a[],int size)
{
bool exchanged;//交换标识
for(int i = 0; i < size; i++)
{
exchanged = false; //初始未交换
for(int j = 0; j < size - 1 - i;j++)
{
if(a[j] > a[j+1])
{
int temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
exchanged = true;//交换
}
}
if(!exchanged)//整趟未交换则表明已经排好序,直接退出
{
return;
}
}
}
int main()
{
int a[8] = {95, 45, 15, 78, 84, 51, 24, 12};
BubSort(a,8);
for(int i = 0; i < 8; i++)
{
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
- 排序算法--冒泡排序
- 排序算法-冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法-冒泡排序
- 排序算法 冒泡排序
- 排序算法-- 冒泡排序
- 排序算法-冒泡排序
- 排序算法---冒泡排序
- 排序算法-冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法 冒泡排序
- 排序算法-冒泡排序
- iOS基础面试题(一)
- K-L变换
- wchar_t TO char & char TO wchar_t
- iOS基础面试题(二)
- android 中CHECK宏分析
- 冒泡排序算法
- Asp.Net 中将多个RadioButton指定在一个组中
- 时空上下文视觉跟踪(STC)算法的解读与代码复现
- Form表单标签的Enctype属性
- iOS基础面试题(三)
- 类员函数的重载、覆盖和隐藏
- C++ const 总结
- iOS基础面试题(四)
- C语言总结之解读C的声明