您的位置:首页 > 其它

排序一: 冒泡排序

2016-08-14 23:54 218 查看
•算法

  相邻元素两两比较,前者大于后者,彼此交换

  从第一对到最后一对,最大的元素沉降到最后

  针对未排序部分,重复以上步骤,沉降次大值

  每次扫描越来越少的元素,直至不再发生交换

•评价

  平均时间复杂度:O(N2)

  稳定排序

// 冒泡排序
void bubble_sort(int *data, int size)
{
int i = 0;
int j = 0;
for(i=0; i<size-1; i++)//趟数
{
int ordered = 1;
for(j=0; j<size-1-i; j++)
{
if(data[j+1] < data[j])
{
int swap = data[j];
data[j] = data[j+1];
data[j+1] = swap;
ordered = 0;
}
}
if(ordered)
{
break;
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: