c气泡排序算法示例详细信息
泡沫排序是一种非常简单的排序算法。 以下小编总结并详细解说了c气泡排序算法的实例。 希望能帮上忙。
当大学开始学习数据结构和算法时,你会发现这个谈论冒泡排序的排序算法是多么经典。 气泡排序是一种非常简单的排序算法,它反复访问要排序的数列,每次比较两个数,按照升序或降序的规则进行比较.交换两个数。 例如,重新排列以下数据:
10 3 8 0 6 9 2
使用气泡排序按升序排序时,排序步骤如下:
3 10 8 0 6 9 2 //10与3进行比较,103、更换位置
3100692//10(8 (与8比较,108,位置更换
3 8 0 10 6 9 2 //10再次与0比较,100,更换位置
.
3069210//这时,10来到最右边,是最大的数字。 这个时候,我们从一开始就在比较
3 8 0 6 9 2 10 //3不到8,所以不需要更换位置
3 0 8 6 9 2 10 //8大于0,更换位置
.
0 2 3 6 8 9 10
很简单。 让大的数量往下沉,让小的数量慢慢上浮。 泡沫排序的时间复杂度也是o(n^2)。
代码实现
复制代码就是:
#包含
用户命名空间STD;
voidbubblesort(intarr[],int length ) )。
{
int temp;
for(intI=0; i length; I )
{
for(intj=0; j length - i - 1; j )
{
(if(arr[j]arr[j1] ) ) ) ) ) ) ) )。
{
temp=arr[j];
arr[j]=arr[j 1];
arr[j 1]=temp;
}
}
}
}
int main () )
{
intarr [ 10 ]={ 2,4,1,0,8,4,8,9,20,7 };
bubblesort(arr,sizeof ) arr )/sizeof (arr [0] );
for(intI=0; Isizeof(arr )/sizeof ) arr[0]; I )
{
出局了
}
出局了
返回0;
}
【c冒泡对齐算法实例详情】相关文章: