排序

排序

  • 快速排序
    • 基本思路:
      • 选择枢轴,经过一趟排序后找到枢轴应该放的位置,并且枢轴左边都小于枢轴,右边均大于。
      • 递归执行左子序和右子序
    • 具体算法:
      • 在找枢轴位置时,在low小于high的情况下,先从high位置与枢轴值比较若大于high向前移动,直到找到比枢轴值小的与low交换
  • 选择排序
    • 基本思想
      • 选择最小的放在首位,之后在比较后面的子序列
  • 插入排序
    • 基本思想
      • 假设第一个元素自成一个有序列,将后面元素一次插入到队列中
  • 冒泡排序
    • 基本思想
      • 经过第一轮比较后,最大位于第n位,下一轮比较前n-1位子序列
  • 希尔排序
    • 基本思想
      1. 选择一个增量delta,该增量大于1,从数组中按此增量选择出子数组进行一次直接插入排序。
      2. 保留该增量delta并依次移动首个元素进行直接插入排序,直到一轮完成。
      3. 减小增量,不断重复上述过程,直到增量减小为1.显然,最后一次为直接插入排序。
  • 归并排序
    • 基本思想
      • 将数组划分为尺寸为1的数组子序列
      • 再两两归并
  • 堆排序
原文地址:https://www.cnblogs.com/NewDolphin/p/5465181.html