排序方法大杂烩
选择排序
思路
每一次循环将每一个数和第一个数相比较,如果找到比第一个数更小的数就将minn给它,这样一轮下来就找出最小(大)的数放在最前面了,以此类推,每次都找到未排序的序列里的最小数,并放到未排序序列里的第一个。
代码

注:
我写的代码里交换时用了最原始的方法,也就是定义一个新变量,还可以用swap函数,写法为swap(两个要交换的数中间用,隔开).
冒泡排序
思路
通过元素的两两比较,判断是否符合要求(大/小),如果不符合就交换位置,小(大)的元素通过不断交换会慢慢的换到前面,最后全部排列好
代码

注:
这个代码是初始版,非常好懂,时间复杂度也比较高,下面给一个优化版:

定义一个bool类型的flag变量,减少时间复杂度

本文详细介绍了C++中常见的排序算法,包括选择排序、冒泡排序、插入排序、桶排序和标准库中的sort函数排序。每种算法都阐述了基本思路并提供了代码实现。文章末尾还总结了排序算法的一些实用技巧,如输入输出效率、数组初始化和换行方法等。
最低0.47元/天 解锁文章
2983





