PHP排序

作者: 梁烨端木 | 来源:发表于2017-03-05 01:06 被阅读0次

    PHP排序

    ▲ 概念:所谓排序就是对一组数据,按照某个顺序排列的过程。
    排序分两大类:首先来介绍一些常用的排序方法,排序是一个程序员的基本功;

    1.交换式排序法 - 冒泡排序法;

    • 通过对待排序序列从后向前(从下标较大的元素开始),依次比较相邻元素的排序码,若发现逆序则交换,使排序码较小的元素逐渐从后补移向前部(从下标较大的单元移向下标较小的单元),就想水底下的气泡一样逐渐向上冒。
      • 因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志flag判断元素是否进行过交换。从而减少不必要的比较。

      • 冒泡排序法.png
      • 数组默认传递的是值,不是地址

    2.选择排序法;

    • 选择排序也属于内部排序法,是从欲排序的数据中,按指定的规则选出某一元素,经过和其他元素重整,在依原则交换位置后达到排序的目的。
    • 选择排序法.png

    3.插入排序法;

    • 插入排序法属于内部排序法,是对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的。
    • 排序思想:把N个待排序的元素看成为一个有序表和一个无序表,开始时有序表只包含一个元素,无序表中包含有N-1个元素,排序过程中每次从无序表中取出第一个元素,把它的排序码一次与有序表元素的排序码进行比较,将它插入到有序表中的适当位置,使之成为新的有序表。
    • 插入排序法.png

    4.快速排序法

    • 该方法用到了递归。
    • 快速排序法.png

    相关文章

      网友评论

          本文标题:PHP排序

          本文链接:https://www.haomeiwen.com/subject/cujnvttx.html