程序分享--排序算法--冒泡排序

关注我,持续分享逻辑思维&管理思维; 可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;

有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自我介绍》。

-------------------------------------正文----------------------------------------

之前写过面试相关的文章,提到后续会分享面试过程中常见的代码。从今天开始,正式分享。以下是冒泡排序代码。传参为数组指针和长度。

当然,有些同学会使用stl::vector<int>,方式是一样的。但stl本身有sort函数:stl:sort()。因此,这次使用的是数组指针。

void bubble(int* nums, int len)

{

bool swap;

for(int i=0;i<len;i++)

{

swap =false;

for(int j=1;j<len-i;j++)

{

if(nums[j-1]>nums[j])

{

int temp = nums[j];

nums[j] = nums[j-1];

nums[j-1]=temp;

swap=true;

}

}

if(!swap)

{

break; //一趟排序中没有交换位置,说明元素已经有序。停止循环

}

}

}

相关推荐
捕鲸叉30 分钟前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer34 分钟前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法
wheeldown1 小时前
【数据结构】选择排序
数据结构·算法·排序算法
观音山保我别报错2 小时前
C语言扫雷小游戏
c语言·开发语言·算法
TangKenny3 小时前
计算网络信号
java·算法·华为
景鹤3 小时前
【算法】递归+深搜:814.二叉树剪枝
算法
iiFrankie3 小时前
SCNU习题 总结与复习
算法
鱼跃鹰飞4 小时前
大厂面试真题-简单说说线程池接到新任务之后的操作流程
java·jvm·面试
Dola_Pan4 小时前
C++算法和竞赛:哈希算法、动态规划DP算法、贪心算法、博弈算法
c++·算法·哈希算法
小林熬夜学编程5 小时前
【Linux系统编程】第四十一弹---线程深度解析:从地址空间到多线程实践
linux·c语言·开发语言·c++·算法