![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
zzy_阳阳
这个作者很懒,什么都没留下…
展开
-
排序算法01-选择排序(java)
选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 其时间复杂度O(),空间复杂度O(1),稳定性:稳定。 具体java实现代码如下:public static void sort(int[] array) { int n = array.length;...原创 2020-05-20 13:47:02 · 218 阅读 · 0 评论 -
快速幂算法-java实现
在计算机中,十进制可以和二进制进行转换,利用该原理可将指数转为 a=0或1通过快速幂可将指数运算时间复杂度由O(n)降低到O(longn).具体代码如下:public static long fun(long base, int index){ long tmp = 1; while (index > 0) { if ((ind...原创 2020-05-19 11:13:12 · 591 阅读 · 0 评论 -
斐波那契数列最优解-矩阵快速幂
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用。 1、递归...原创 2020-05-14 15:07:29 · 646 阅读 · 0 评论