![](https://img-blog.csdnimg.cn/20190930142236305.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法浅析
记载学习当中遇到的各种算法~
arttnba3
西安电子科技大学网络空间安全专业在读,XDSEC19级二进制组成员,前OIer,baby pwner,啥都不会的蒟蒻,主C/C++/Java开发,正在学习fuzz漏洞挖掘
展开
-
【算法浅析NO.00007】动态规划算法浅析 by arttnba3
【算法浅析NO.00007】动态规划算法浅析 by arttnba30x00.绪论0x01.什么是动态规划算法?定义求解过程算法过程0x02.动态规划算法的简单应用上楼梯问题题目描述输入格式输出格式输入输出样例说明/提示问题分析状态转移方程时间复杂度解决方案最长上升降子序列问题1759:最长上升子序列问题分析算法过程状态转移方程具体架构时间复杂度解决方案0 1 背包问题注:本文首发地址:arttnba3.cn0x00.绪论动态规划(Dynamic Programming)是一种通过把原问题分解为相对简原创 2020-09-04 17:37:56 · 347 阅读 · 1 评论 -
【算法浅析NO.00006】快速排序算法浅析 by arttnba3
【算法浅析NO.00005】快速排序算法浅析 by arttnba30x00 绪论0x01 基本概念pre.冒泡排序(Bubble Sort)0x02 原理浅析step1:选取基准值step2:从后向前遍历step3:从前向后遍历step4:重复step2、3step5:基准值回归数组,再对其左、右部分进行快排0x03 代码实现0x04 简单优化0x05 高级优化0x00 绪论众所周知,快速排序是所有的排序算法当中速度较快的一种,手撕快排也成为了每一位OIer的必备技能(实际上大部分人都会直接用STL的原创 2020-06-15 16:05:58 · 329 阅读 · 2 评论 -
【算法浅析NO.00005】Dijkstra算法浅析 by arttnba3
【算法浅析NO.00005】Dijkstra算法浅析 by arttnba30x00.绪论0x01.什么是Dijkstra算法?定义具体过程基本概念:图的表示代码实现邻接矩阵版邻接表优化:堆优化0x00.绪论Dijkstra算法算是图论当中最为基础的算法之一,也是各类信息学竞赛(Olympic Imformation)当中各大图论算法的基础,碰巧今天的离散数学课刚好讲到了Dijkstra算法,...原创 2020-04-28 19:42:48 · 349 阅读 · 0 评论 -
【算法浅析NO.00004】递归算法浅析(un-accomplished version) by arttnba3
递归算法浅析-(un-accomplished version)0x00.绪论0x01.什么是递归(recursion)?0x02.递归算法的简单应用-part1一、求阶乘二、汉诺塔问题三、输出字符三角形四、二叉树的遍历五、未完待续...0x00.绪论递归算法或许是学习算法时最先碰到的基础算法了,或许大部分人都会像我当年一样看一两眼、知道“哦递归就是函数自己调用自己嘛”就跳过了,便缺少了对递归...原创 2019-10-26 00:30:37 · 388 阅读 · 0 评论 -
【算法浅析NO.00001】并查集算法浅析 by arttnba3
(开始尝试把以前在新浪博客上写的东西全都搬到CSDN上来,嘿嘿嘿…)绪论我们先来简单看看这样的一个问题:Description若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。 规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。Input第一行:...原创 2019-09-20 23:49:22 · 235 阅读 · 0 评论 -
【算法浅析NO.00002】快速幂算法浅析 by arttnba3
绪论说到求幂,很多有经验的程序员第一时间想到的或许都是math.h当中的pow()函数,刚入门的小白应该也能够想到累乘法一次一次地乘,似乎没什么问题那么为什么我们还要再去研究快速幂算法呢?常规的求幂的算法,不难看出,时间复杂度为O(N),看起来已经没有什么能够优化的地方了,但是我们依然能够感受得到,在N较大、计算项目多的时候,计算的时间往往会超出预期(尤其是OIer最担心的事情之一TLE往往...原创 2019-09-21 01:25:33 · 205 阅读 · 0 评论 -
【算法浅析NO.00003】浅析base64编码算法的加密与解密:打造属于自己的“base64”! by arttnba3
【算法浅析NO.00003】浅析base64编码算法的加密与解密:打造属于自己的“base64”! by arttnba3绪论基本原理加密一、密钥64=2^6^(base64密钥)128=2^8^ (ASCII)二、转换规则:“三变四,按表转”重新分组时我们以每6个二进制位作为一组,共分为四组:最后在每组的高位补上两个0,变成标准的一个字节:三、非3倍数字节文本:“尾补0,余补=”对于多余的一个字...原创 2019-09-29 18:58:48 · 365 阅读 · 0 评论