简单常用的几个排序方法的介绍和c++代码

一.冒泡排序
冒泡排序是一种最基础的交换排序.因为其简单和易理解, 一直被新手们称为yyds.下面看看冒泡排序的思路和代码实现吧!
思路:(升序排序)冒泡排序操作会从第一位开始将相邻的两个元素进行比较,并将更大的数字交换到右边, 重复此操作直到最大的数字移到最右边. 每一趟都可以把最大的数字移到最右边, 以此进行n-1趟操作来排序n个数字.
c++代码:
二.选择排序
选择排序也是初学者最喜欢的排序算法之一.
思路: 找到数组中最小的元素,将它与第一个元素交换位置,然后在剩下的元素中再找到最小的元素,将它与第二个元素交换位置,重复执行这个过程,直到整个数组排序.
c++代码:
三.快速排序
快速排序有着比冒泡排序和选择排序更好的时间复杂度,但不是那么易于理解.这里主要给出代码实现:
思路:首先确定一个数key,这里我们取数组中间的数,然后i从左到右找到比key大的数, j从右到左找比key小的数,重复此过程直到i和j相遇,此时key左边的数都比它小,右边的数都比它大.在递归的把key左边的数和右边的数执行如此操作,直到数组排列完毕:
c++代码:
四.STL中的sort函数
相信这才是最方便,大家最常用的排序方法.
需要注意,sort函数包含在头文件为#include<algorithm>的c++标准库中.
sort函数有三个参数,分别是sort(第一个元素的指针,最后 一个元素的下一位的指针,排列方法);
如果不传第三个参数,会默认从小到大排序。
希望大家给我一个免费的赞。