排序函数集合:冒泡排序、选择排序、插入排序、快速排序、归并排序、桶排序

冒泡排序

算法思想:

比较相邻,如果第一个元素大于第二个元素就交换

从左到右遍历,然后重复第一步,可以保证最大的元素在后面

重复上述操作,就能得到第二大、第三大。。。

代码:

选择排序

算法思想:

从左到右找到最小的元素,放在起始位置

重复上述步骤,依次找到第2小。。。。

代码:

插入排序

算法思想:

第一个元素看做已排序,从左到右遍历每一个元素

在已经排序的元素从后向前扫描,如果当前元素大于新元素,则该元素向后移动到后一位

重复第二步,直到找到小于等于新元素则停止

代码:

快速排序

算法思想:

找到一个基准值x

把列表分成三部分:小于等于x的数字、x、大于x的数字

左半部分和右半部分都用这个策略

代码:

归并排序

针对问题:把两个有序的列表合并成一个列表

代码:

桶排序

算法思想

代码:

相关推荐
Mz12211 小时前
day05 移动零、盛水最多的容器、三数之和
数据结构·算法·leetcode
SoleMotive.1 小时前
如果用户反映页面跳转得非常慢,该如何排查
jvm·数据库·redis·算法·缓存
念越1 小时前
判断两棵二叉树是否相同(力扣)
算法·leetcode·入门
ghie90902 小时前
线性三角波连续调频毫米波雷达目标识别
人工智能·算法·计算机视觉
却话巴山夜雨时i2 小时前
74. 搜索二维矩阵【中等】
数据结构·算法·矩阵
sin_hielo2 小时前
leetcode 3512
数据结构·算法·leetcode
_F_y3 小时前
二分:二分查找、在排序数组中查找元素的第一个和最后一个位置、搜索插入位置、x 的平方根
c++·算法
Elias不吃糖3 小时前
LeetCode--130被围绕的区域
数据结构·c++·算法·leetcode·深度优先
烛衔溟3 小时前
C语言算法:动态规划基础
c语言·算法·动态规划·算法设计·dp基础