摘要:
树状数组(Binary Indexed Tree(B.I.T), Fenwick Tree)是一个查询和修改复杂度都为log(n)的数据结构。主要用于查询任意两位之间的所有元素之和,但是每次只能修改一个元素的值。 修改和求和的时间复杂度:logn 设节点编号为x,那么... 阅读全文
摘要:
状压DP:用到状压的DP。什么是状压?把一系列状态压缩成一个状态(通常用二进制)。 例题:HDU1074Doing HomeworkTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ... 阅读全文
摘要:
Max Sum Plus PlusTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 38720 Acce... 阅读全文
摘要:
目录1 动态规划(DP)1.1 最长上升子序列(LIS)1.1.1 O(n^2)1.1.2 O(nlogn)1.2 最长公共子序列(LCS)1.3区间DP1 动态规划(DP)1.1 最长上升子序列(LIS)1.1.1 O(n^2)//求到第i位的最长子串长度for (... 阅读全文
摘要:
不要脸的放到了Github上面,嘿嘿。Github:https://github.com/Radium1209/Maze先看一下动态效果图(慢放): 首先生成迷宫:主要用了两个算法:Prim和dfs总结:Prim生成的比较像真正的迷宫,所以默认用了Prim生成迷宫具体... 阅读全文
摘要:
数据结构上机时发现有一个优化马踏棋盘的方法。仅适用于优化求解一个(或少数),对于求所有解时间不变。优先选取拥有较少可行孙节点的子节点方向。 即dfs查找路径时优先选择孙节点少的子节点。下面附上代码。代码:#include #include #include #incl... 阅读全文
摘要:
在使用python的过程中,每次使用都得手动python xxx.py比较麻烦python也可以将程序打包成exe文件这个时候就需要用到 pyinstaller 了 pyinstaller的安装:已有pip的同学可以直接用pip安装:由于我装了py2和py3,所以也有... 阅读全文
摘要:
在使用Github的时候,发现一个很小但是很难受的问题语言显示不正确找了一下发现没有语言这一项设置 解决方法:修改(新建).gitattributes 文件在其中加入(python可替换为其他语言):*.js linguist-language=python*.css... 阅读全文
摘要:
出自一次很失败的开学测试LIS自然会做可以参见:https://blog.csdn.net/Radium_1209/article/details/79704234由于对于LIS的nlogn算法不熟悉,导致错误理解,记录的路径出现了问题,其中还用了n^2的算法记录路径... 阅读全文
摘要:
Dijkstra算法:求单源最短路的算法。主要步骤:1.定义一个dis数组记录起始点到每个点的距离,初始化时不能到达的记为inf(一般用0x3f3f3f3f)。2.找到离起始点最近的节点从这个点松弛,并标记3.松弛,如果出现s->m > s->k->m,则将dis[m... 阅读全文