zoukankan      html  css  js  c++  java
  • 交换与选择类排序

    各种排序算法所需辅助空间
    1、 所有的简单排序方法(包括:直接插入、起泡和简单选择)和堆排序的空间复杂度为O(1);

    2、 快速排序为O(logn ),为栈所需的辅助空间;

    3、 归并排序所需辅助空间最多,其空间复杂度为O(n );

    4、链式基数排序需附设队列首尾指针,则空间复杂度为O(rd )。

    5、直接插入排序:比较次数 最少n-1次;最多(n-1)(n+2)/2
    移动次数 最少0; 最多(n-1)(n+4)/2
    使用一个辅助存储空间,是稳定的排序;

    6、折半插入排序:比较次数 最少与最多同,都是n*log2n(其中2为底,下边表示同),
    移动次数 最少0,最多时间复杂度为O(n2);(n的平方,以下也如此表示);
    使用一个辅助存储空间,是稳定的排序;

    7、冒泡排序: 比较最少为:n-1次,最多时间复杂度表示为o(n2);
    移动次数最少为0,最多时间复杂度表示为O(n2);
    使用一个辅存空间,是稳定的排序;

    8、简单选择排序: 比较次数没有多少之分,均是n(n-1)/2;
    移动次数最少为0,最多为3(n-1);
    使用一个辅存空间,是稳定的排序;

    9、快速排序:比较和移动次数最少时间复杂度表示为O(n*log2n);
    比较和移动次数最多的时间复杂度表示为O(n2);
    使用的辅助存储空间最少为log2n,最多为n的平方;是不稳定的排序;

    10、 堆排序: 比较和移动次数没有好坏之分,都是O(n*log2n);
    使用一个辅存空间,是不稳定的排序;

    11、2-路归并排序:比较和移动次数没有好坏之分,都是O(n*log2n);
    需要n个辅助存储空间,是稳定的排序;

  • 相关阅读:
    关于有序查找的随笔
    Spring框架(一) 创建bean
    Linux常用命令
    Spring框架(二) bean的歧义性
    java实现图片文字识别的两种方法
    分享基于分布式Http长连接框架代码模型
    分享基于分布式Http长连接框架设计模型
    无限树Jquery插件zTree的使用方法
    分享基于分布式Http长连接框架
    使用vs编译事件来动态发布配置文件
  • 原文地址:https://www.cnblogs.com/KeepZ/p/11873451.html
Copyright © 2011-2022 走看看