冒泡排序举例

本文详细介绍了冒泡排序的基本原理,以C语言为例,展示了如何从大到小对数组进行排序,并给出了实际的代码实现和运行结果。
摘要由CSDN通过智能技术生成

一、个人冒泡排序理解
以从大到小为例,冒泡排序的本质就是就是遍历所有相邻元素,如果前者小于后者就进行交换,反之保持原有位置不变。设元素个数为n,以最复杂的情况为例子,即当前元素是以从小到大进行排序,则需要进行n-1轮交换,每轮交换次数为n-1,则总交换次数为(n-1)²
二、程序举例

# include <stdio.h>
int main ( void )
{
	int data[8] = {0,15,16,89,105,35,49,52};
	unsigned int i = 0 ;
	unsigned int j = 0 ;
	unsigned int k = 0 ;
	unsigned int t = 0 ;
	for ( i = 0 ; i < 7 ; i++ )
		for ( j = 0 ; j < 7 ; j ++ )
		{
			if (data[j] < data[j+1])
			{
				k = data[j] ;
				data [j] = data[j+1];
				data[j+1] = k ;
			}
		}
	printf ( "冒泡排序从大到小依次为:");
	for ( t = 0 ; t < 8 ; t++ )
	{
		printf ( " %d ",data[t]);

	}
		while ( 1 )
	{
	}	
}

三、运行结果
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值