常用算法总结之排序(二)----基本冒泡

本文详细介绍了一种简单的排序算法——冒泡排序。通过逐步解析冒泡排序的基本思想、工作原理及其实现过程,帮助读者理解其背后的逻辑。文章还提供了一个使用C++实现冒泡排序的具体示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    冒泡排序是一种相邻数据交换的排序方法,通常作为排序算法的入门算法来学习。

    基本思想:对待排序的记录关键字从后往前(扫面顺序不同相应比较就不同)进行多遍扫描,当发现相邻俩关键字的次序与要求的排序规则不符时,就交换这俩个记录。这样,关键字较小的记录将从后面向前面移动,就像气泡上浮一样。
 
    具体交换过程:

    设需排序的记录共n个,其关键字用数组a保存,则:(规则为从小到大)

 (1)首先,将a[n-1]与a[n-2]进行比较,若a[n-1]<a[n-2],则交换a[n-1]与a[n-2];

 (2)修改数组下标,使需要比较的元素为a[n-2]与a[n-3],重复步骤(1),对其做比较;

         重复该过程,直至比较完a[1]与a[0],完成一遍扫描后,最小关键字已存储在a[0]中;

 (3)重复,进行第二遍扫描,扫描到a[2]与a[1]比较即结束;

 (4)通过第n-1遍扫描,所有关键字排序完成。

    c++代码实现:

    1.随机数生成部分    CreatData

    2.冒泡排序部分       BubbleSort

    3.main函数测试部分 BubbleSortTestMain

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值