前边提到的排序都是比较排序,通过比较两个数的值来进行排序,比价排序的时间复杂度下界是O(nlgn),要想有更快的算法,就要抛弃比较的思想。
30
2018
08
计数排序
发布:hanyeah | 分类:算法 | 评论:0 | 浏览:
30
2018
08
快速排序
与归并排序一样,快速排序也使用了分治思想。快速排序最坏情况时间复杂度是O(n^2),平均时间复杂度是O(nlgn),而且O(nlgn)中隐含的常数因子很小,快速排序还是原址排序。
发布:hanyeah | 分类:算法 | 评论:0 | 浏览:
27
2018
08
Young(杨氏)矩阵
假定我们有一个mxn的矩阵,它的每一行以及每一列都是排好序的。我们可以称这个矩阵为Young tableaus(杨氏矩阵)。
发布:hanyeah | 分类:算法 | 评论:0 | 浏览:
27
2018
08
堆排序
(二叉)堆是一个数组。它可以看成一个近似的完全二叉树,树上的每一个节点对应数组中的一个元素。除了最底层外,该树是完全充满的,而且是从左向右填充。表示堆得数组A包括两个属性,A.length给出数组元素的个数,A.heapSize表示有多少个堆元素存储在该数组中。
发布:hanyeah | 分类:算法 | 评论:0 | 浏览:
23
2018
08
矩阵乘法的Strassen方法
两个n×n的矩阵相乘,按照定义来写算法,算法的时间复杂度是O(n³)。
Strassen算法是一个分治算法,可以将矩阵相乘的时间复杂度降为O(n^lg7)。
发布:hanyeah | 分类:算法 | 评论:0 | 浏览:
20
2018
08
19
2018
08
斐波那契数和黄金分割
斐波那契数:
F0 = 0;
F1= 1;
Fi = Fi-1+Fi-2 ; i>=2
黄金分割率φ及其共轭数φ^ ,是方程x^2 = x + 1的两个根。
发布:hanyeah | 分类:算法 | 评论:0 | 浏览:
18
2018
08
18
2018
08
Horner规则(秦九韶算法)
秦九韶算法是一种将一元n次多项式的求值问题转化为n个一次式的算法。在西方被称作霍纳算法,是以英国数学家霍纳命名的。
发布:hanyeah | 分类:算法 | 评论:0 | 浏览: