- 博客(10)
- 收藏
- 关注
原创 蓝桥杯知识点汇总:基础知识和常用算法
此系列包含蓝桥杯(软件类)所考察的绝大部分知识点,算法,和写算法题必备的JAVA的基础语法,API,对想从C/C++转到JAVA组以及初学算法的同学会有帮助。
2020-03-18 19:42:44 120187 59
原创 拓扑序列(拓扑排序)
文章目录摘要什么是拓扑序列拓扑序的求法摘要本文主要介绍拓扑排序,和求解拓扑排序的方法。什么是拓扑序列拓扑序列是对于有向图而言的,有向图的拓扑序是其顶点的线性排序,使得对于从顶点uuu 到顶点vvv的每个有向边uvuvuv, uuu 在排序中都在vvv之前。例如对于下图:对于上图, 存在4条边:(1,3)(1,2)(2,4)(2,3)该图的拓扑序必须要满足以下两点:每个顶点只出现...
2020-03-31 21:07:31 68246 4
原创 任意进制之间的转换
本文主要讲解整数的进制转换问题。方便的是,对于低精度整数,java中的整型基类Integer和Long中的parseXXX()方法和valueOf()方法可以将2 ~ 36进制的字符串转化为10进制整数,toString()方法可以将10进制数转化为2 ~ 36进制的字符串。对于高精度数,java中的大数类中也包含可以将2 ~ 36进制的字符...
2020-03-27 15:02:17 6627 1
原创 高精度运算(大数运算)
高精度运算是指参与运算的数远大于标准数据类型的数,动辄成百上千位的数。所以高精度数又被称为大数。本文主要讲解:大数加法,大数减法,大数乘法,大数除法,大数阶乘。java的大数类做这一类题很方便,效率高代码短,但是学会高精度算法还是很有必要的。
2020-03-24 03:36:31 4219 4
原创 计算n阶行列式
文章目录摘要行列式行列式的值拉普拉斯展开余子式代数余子式代码实现:摘要本文主要介绍如何用拉普拉斯展开计算计算n阶行列式的值。行列式行列式(Determinant)是数学中的一个函数,将一个n×n{n\times n}n×n的矩阵A{A}A映射到一个纯量,记作det(A)或∣A∣{\det(A)}或{|A|}det(A)或∣A∣。 ——摘自维基百科说白了就是一个n×n{n\times...
2020-03-16 13:45:38 8960 2
原创 矩阵乘法和矩阵快速幂
文章目录摘要矩阵矩阵乘法摘要本文主要讲解矩阵乘法和矩阵快速幂。矩阵数学上,一个m×n{\displaystyle m\timesn}m×n的矩阵是一个由mmm行(row)n列(column)元素排列成的矩形阵列。矩阵里的元素可以是数字、符号或数学式。以下是一个由6个数字元素构成的2行3列的矩阵:[19−13205−6]{\displaystyle {\begin{bmatrix}1&...
2020-03-10 23:02:38 3164
原创 欧几里得算法和扩展欧几里得算法
文章目录摘要欧几里得算法扩展欧几里得算法最小正整数解摘要本文主要讲解欧几里得算法和扩展欧几里得算法。欧几里得算法欧几里得算法就是辗转相除法,用于求两个数的最大公约数。设gcd(a,b)gcd(a, b)gcd(a,b) 表示a和b的最大公约数。辗转相除法的核心就是gcd(a,b)=gcd(b,a%b)gcd(a, b) = gcd(b, a\%b)gcd(a,b)=gcd(b,a%b)...
2020-03-09 23:29:46 4676 2
原创 快速幂
文章目录摘要引言求nkn^knk快速幂超级详细的基础算法和数据结构合集:https://blog.csdn.net/GD_ONE/article/details/104061907摘要本文主要介绍快速幂算法,快速幂虽然代码简单,但是往往会与其他算法相结合,很重要。引言当我们计算 nkn^knk时,常用的做法是对nnn连乘kkk次, 但如果kkk特别大,假如k=1e6k = 1e6k=1...
2020-03-06 19:42:48 3402 7
原创 素数筛法详解:埃氏筛和欧拉筛
文章目录摘要欧拉筛摘要本文主要介绍欧拉筛和欧拉函数。欧拉筛上一篇博客讲过了如何判断一个数是否是质数,那么现在要在1s内求出区间[1,1e7][1,1e7][1,1e7]内的所有质数,你会怎么做,如果对每个数都判断其是不是质数,时间复杂度是O(n∗n)O(n*\sqrt{n})O(n∗n),数据量是1e71e71e7,这样做肯定会超时的。这就需要用到下面讲的欧拉筛法了, 欧拉筛法的时间复杂...
2020-03-05 15:47:41 20286 10
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人