我果然还是太NAIVE了 一直没有学到这么搞基的求逆序对数方法 其实就是有点像计数排序 先开一个巨大的树状数组 然后插入一个数的时候看一下SUM 用当前位置减一下SUM就可以了 //其实就是求和 1 #include <iostream> 2 #include <cstdio> 3 #include ...
分类:
编程语言 时间:
2017-05-20 11:18:16
阅读次数:
281
算法原理 桶排序 (Bucket sort)或所谓的箱排序的原理是将数组分到有限数量的桶子里,然后对每个桶子再分别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序),最后将各个桶中的数据有序的合并起来。 排序过程: Data Structure Visualizations 提供了 ...
分类:
编程语言 时间:
2017-05-20 09:59:25
阅读次数:
123
#include<stdio.h> #include<stdlib.h> #include<math.h> #include<string.h> #define MaxNumKey 6 /*keyword项数的最大值*/ #define Radix 10 /*keyword基数,此时是十进制整数的基 ...
分类:
编程语言 时间:
2017-05-19 15:42:20
阅读次数:
157
常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:关于时间复杂度:1.平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序。2.线性对数阶(O(nlog2n))排序快速排序、堆排序和归并排序;3.O(n1+..
分类:
编程语言 时间:
2017-05-19 00:02:39
阅读次数:
261
常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:关于时间复杂度:1.平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序。2.线性对数阶(O(nlog2n))排序快速排序、堆排序和归并排序;3.O(n1+..
分类:
编程语言 时间:
2017-05-19 00:02:08
阅读次数:
258
常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:关于时间复杂度:1.平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序。2.线性对数阶(O(nlog2n))排序快速排序、堆排序和归并排序;3.O(n1+..
分类:
编程语言 时间:
2017-05-19 00:01:13
阅读次数:
253
常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:关于时间复杂度:1.平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序。2.线性对数阶(O(nlog2n))排序快速排序、堆排序和归并排序;3.O(n1+..
分类:
编程语言 时间:
2017-05-19 00:00:34
阅读次数:
310
常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:关于时间复杂度:1.平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序。2.线性对数阶(O(nlog2n))排序快速排序、堆排序和归并排序;3.O(n1+..
分类:
编程语言 时间:
2017-05-18 23:55:35
阅读次数:
270
直接插入排序 冒泡排序 简单选择排序 希尔排序 快速排序 堆排序 归并排序 基数排序 ...
分类:
编程语言 时间:
2017-05-18 16:50:49
阅读次数:
204
空间复杂度 空间性能是排序所需辅助空间大小 所有简单排序和堆排序都是0(1) 快速排序为0(logn),要为递归程序执行过程栈所需的辅助空间 归并排序和基数排序所需辅助空间最多,为O(n) ...
分类:
编程语言 时间:
2017-05-16 17:26:30
阅读次数:
182