初学者在c语言中,如何实现简单的快速排序(算法)

第一步,选择一个基准数,通过从头到尾从尾到头方式,将其分为两个部分。

例如,{6,3,7,4,1,9,5,8}中,我们选择6作为基准数,让数列中所有大于6的数字集中在右边,小于6的集中在左边。最后把6放在最中间,利用递归不断循环即可搞定!

详细教程我放在了下面的代码加注释的图中


代码加超详细注释:

初学者在c语言中,如何实现简单的快速排序(算法)_第1张图片


这只是理解快速排序的最基本的一部分,而后续的快速排序需要引入自己写的排序规则函数,会复杂很多(相比会比表中多一个参数,但是函数默认的规则是从小到大,所以我们平时用快排函数),可以省略规则。如图中给的参数即可。


每日金句:

如果抱怨成习惯,心灵就像上了枷锁,没有一刻解脱。唯有放下抱怨,才能体会到生命的自在与幸福。

你可能感兴趣的:(c语言重要算法栏目,算法,c语言)