Python编程干货,送给小白程序员的,三个常用排序算法
Python越来越火热,也有越来越多的朋友进入这个行业,今天,就给大家介绍一下,Python编程中的三个常用的排序算法。
一、归并排序
1、申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列;
2、设定两个指针,最初位置分别为两个已经排序序列的起始位置;
3、比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置;
4、重复步骤 3 直到某一指针达到序列尾;
将另一序列剩下的所有元素直接复制到合并序列尾。
如果需要Python入门学习资料,可以转发后,添加Python技术资料分享QQ群580478401,即可领取大量Python入门学习资料以及实战项目源码文件等。
二、快速排序
1、从数列中挑出一个元素,称为 “基准”(pivot);
2、重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分区(partition)操作;
3、递归地(recursive)把小于基准值元素的子数列和大于基准值元素的子数列排序;
如果需要Python入门学习资料,可以转发后,添加Python技术资料分享QQ群123345949,即可领取大量Python入门学习资料以及实战项目源码文件等。
三、堆排序
1、从数列中挑出一个元素,称为 “基准”(pivot);
2、重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分区(partition)操作;
3、递归地(recursive)把小于基准值元素的子数列和大于基准值元素的子数列排序;