zoukankan      html  css  js  c++  java
  • 基本排序算法

    (原创)

    排序算法小记:

    1.插入排序(insertion sort)

    打牌式

    2.选择排序(selection sort)

    挑出最值放第一个,再挑出余下最值放第二个,如此下去

    3.merge sort

    分割到两两一组,然后有序合并

    4.heap sort

    首次建max-heap,然后每次不断交换root和尾节点,同时对新的size-1的二叉树heapify,直至一个节点。

    5.快排

    选一个中介,如最左元素,剩下的元素分割成两组,一组小于,一组大于等于,

    然后将中介置于正确分割位置p,再对 start - (p-1)  和 (p+1) - end 两部分递归。

    6.shell sort

    不断二分gap至1,每次对隔gap的元素(list[i] 和 list[i+gap])比较大小, 使隔gap的子序列是有序的。

    7.冒泡

    每趟相邻两元素比较,交换出最大值到最右。

  • 相关阅读:
    网文阅读笔记
    UUID
    各种网站
    项目
    常用正则表达式
    Struts 2.0 HelloWorld
    接口与抽象类(深入多态)
    #define的优点/volatile的好处
    基本套接口编程
    大小端判断及相互转化
  • 原文地址:https://www.cnblogs.com/randomstring/p/10426250.html
Copyright © 2011-2022 走看看