经典排序算法之冒泡排序|c++代码实现

序言

哈喽,佳人们!最近我在重新学习数据结构与算法,但经过深刻的批评与自我批评,总结过往血的教训,我意识到自己并没有足够的毅力。因此呢,为了督促自己的学习,我会将学习过程中经典的代码整理下来并坚持打卡分享到csdn。如果恰巧你也有兴趣和我一道提升自己的代码能力,欢迎uu们点个赞&收藏&关注,以防我们走散了,蟹蟹侬咯!

与此同时,为了巩固学习,也会刷一些oj的题目,之后也会一并分享在此滴。当然咯,前提是,我这个小白能在平台ac并能讲的清楚。

今天向大家介绍的是冒泡排序,一个很基础的排序算法,也是本阶段学习过程的第一篇文章,欢迎uu们在评论区指正、建议。

算法介绍

  1. 第一轮,从第1个数到第n个数,逐个对比每两个相邻的数a、b,如果a>b,则将a、b交换。这一轮的结果是把最大的数“冒泡”到了第 n 个位置,在后面不用再管它。

  2. 第二轮,从第1个数到第 n-1 个数,对比每两个相邻的数。这一轮,把第二大的数“冒泡”到了第 n-1 个位置。

  3. 继续以上过程,直到排序完成。

时间复杂度

可以清晰的看到代码中有两层循环,因此时间复杂度为O(n^2)

代码实现

//bubble_sort
//算法步骤:从左往右开始遍历,比较相邻两个数,如果左边的大即交换二者;总共遍历 len-1 次
#include<bi
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MosesCD

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值