
笔记
文章平均质量分 94
M_ercury_
这个作者很懒,什么都没留下…
展开
-
程序设计专题
文章目录Chapter 1 模块化程序设计代码规范结构化程序设计头文件编译预处理递归Chapter 2 多文件项目文本文件和二进制文件多文件的程序结构文件模块间的连接文件包含文件模块间的通信--存储类别工程文件Chapter 3 链表内存动态分配C程序内存分布区域动态按需分配所需函数链表单向链表的实现Chapter 4 指针进阶主要内容二级指针(指向指针的指针)指针数组字符数组,字符指针 字符串命令行参数Chapter 5指针补充==数组指针==二维数组与指针的关系指针作为函数的返回值函数指针(指向函数的指原创 2020-09-07 15:55:48 · 2271 阅读 · 0 评论 -
【笔记+代码】背包问题
01背包完全背包多重背包混合背包二维费用背包 n个物品 背包容量W w[i] 费用,v[i] 价值; 01背包每件物品选或不选。void zerone(int wei,int val){ for(int j=W;j>=wei;j--) d[j]=max(d[j],d[j-wei]+val);}for(int i=1;i<=n;i++) zerone(w[i],原创 2017-09-06 19:25:28 · 424 阅读 · 3 评论 -
【笔记+模板】图论 持续更新中
一:存图//vector存图vectorint> tu[N],cost[N];void build(int f,int t,int v){ tu[f].push_back(t); cost[f].push_back(v); return ;}//邻接表存图struct edge{ int f,t,v;}e[M];int next[M],f原创 2017-08-15 16:33:51 · 217 阅读 · 0 评论 -
【笔记+模板】树链剖分
定义定义解释算法流程模板//以下部分定义及说明,部分来自不知名神犇的资料,侵删定义1.定义:树链剖分*,计算机术语,指一种对树进行划分的算法,它先通过轻重边剖分将树分为多条链,保证每个点属于且只属于一条链,然后再通过数据结构(树状数组、SBT、SPLAY、线段树等)来维护每一条链。—-摘自百度百科树链,就是树上的路径。剖分,就是把路径分类为重链和轻链原创 2017-09-26 21:42:45 · 351 阅读 · 0 评论 -
【笔记+模板】ST 表
算法流程应用应用于求给定序列中满足区间加法的值(如max,min),以最大值为例 不支持序列修改,如果修改,则需推倒重建预处理数组f[i][j]表示以j为开始的长度为2^i的序列的最大值 f[i][j]=max(f[i-1][j],f[i-1][j+num[i-1]]); 递推预处理出f数组在线查询查询区间[l,r]的最大值 k=log2(r-l+1)变量k是区间长度的log值max(f[k原创 2017-11-02 16:56:42 · 255 阅读 · 0 评论 -
【笔记】tarjian算法 求强连通分量
简介求解强连通分量目的求解强连通分量,缩环,利用节点的sccno编号重新建图,达到题目的要求或者将原图转为DAG,进行图上DPor最短路算法算法流程变量声明: dfn:该节点的dfs编号 low:该节点及其后代能够追溯到的最早的祖先的dfn编号 1.到达新节点,更新dfn,将low初始化为本身的dfn序号,并将其压入栈中 2.遍历u的子节点v, 如果dfn[v]=0,即v还没有被访问过,那原创 2017-10-19 09:10:46 · 498 阅读 · 0 评论 -
【笔记】STL
算法序列操作unique 去重next_permutation 排列reverse 反转swap排序操作sort 排序stable_sort最大最小minmaxmin_elementmax_element二分查找lower_boundupper_boundbinary_search总结规律指针 迭代器有关指针迭代器重载运算符容器string操作函数p原创 2017-11-02 19:49:14 · 1006 阅读 · 0 评论 -
【笔记+例题】 尺取法
算法流程eg1eg2eg3eg4尺取法 部分内容来源于以下博文 侵删 http://blog.youkuaiyun.com/consciousman/article/details/52348439 据说思想来源于尺蠖的运动 https://baike.baidu.com/item/%E5%B0%BA%E8%A0%96/3663106?fr=aladdin//虫类百科,慎点算法流程尺取法:顾名思原创 2017-11-03 21:09:16 · 1686 阅读 · 0 评论 -
【笔记+模板】 匈牙利算法
算法须知算法流程模板例题部分内容摘自以下博客,侵删 http://blog.youkuaiyun.com/pi9nc/article/details/11848327算法须知匈牙利算法用于求二分图的最大匹配,也就是说,无论是有向图还是无向图,原图必须是二分图 (以下把二分图的两部分分为左部右部) 匹配:在图论中,一个「匹配」(matching)是一个边的集合,其中任意两条边都没有公共顶点。最大匹配原创 2017-11-05 07:48:05 · 339 阅读 · 0 评论 -
【笔记+模板】 kmp算法 待更新
例题: https://vjudge.net/problem/POJ-3461代码:#include<iostream>#include<cstdio>#include<cstring>using namespace std;const int N=10000000+50;char s[N],p[N];int n;int next[N];void get_next(){原创 2017-10-13 21:52:20 · 286 阅读 · 0 评论 -
【笔记+模板】 manacher算法
算法相关算法流程定义预处理算法流程模板例题代码算法相关目的:求最长回文子串的长度。回文串:“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。暴力算法:枚举子串,检查是否回文 O(n^3)暴力算法+:枚举每一个字符及空隙作为对称轴,暴力求回文子串长度 O(n^2)Manacher:Manachar算法主要是处理字符串中关于回文串的问题的,它可以在原创 2017-10-29 16:56:30 · 576 阅读 · 0 评论 -
【笔记+模板】图论中的树
名词解释树的性质树的遍历树上lca倍增法树上前缀和树的重心定义求解流程例题树的直径两边dfsbfs小哥哥教的树形DP一些不会的东西名词解释1.树是一种无向连通无环图;是基本数据结构的一种; 通常我们会把树转为有根树来操作; 2.节点的度:一个节点含有的子树的个数称为该节点的度;A节点的度为3 3.叶节点或终端节点:度为0的节点称为叶节点; 4.树的度:一棵树中,最原创 2017-08-15 14:33:06 · 1539 阅读 · 0 评论 -
【笔记+模版】 线段树
例题线段树练习1 单点修改,区间查询; http://codevs.cn/problem/1080/#include#includeusing namespace std;const int N=100000;int n,q,x,y,z,v[N];struct seg_tree{ int l,r; long long sum;}t[N2];voi原创 2017-08-09 14:11:57 · 213 阅读 · 0 评论 -
【笔记】 搜索
搜索包括dfs,bfs,迭代加深,启发式搜索;一:常见搜索问题排列,组合,路径二:DFS一搜搜到底; 优点:占空间小,很快找到一个解; 缺点:找的的解不一定是最优解,有超时和爆栈风险; 技巧:打暴力,卡时骗分; 例题:全排列,八皇后,floodfill;三:BFS基于队列,层层展开;注意判重(双哈希) 优点:解与路径长度成正比的问题中,找到的第一个解是最优解; 缺点;占空间大,stl里的原创 2017-08-15 09:55:18 · 265 阅读 · 0 评论 -
【笔记】哈希
定义哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法。哈希算法就是把字符串转变为一个数 转变方式为hs[i]=hs[原创 2017-04-22 21:49:40 · 578 阅读 · 0 评论 -
【笔记】字符串的最小表示法
大部分内容整理自here http://blog.youkuaiyun.com/zy691357966/article/details/39854359求字符串的循环最小表示https://www.luogu.org/problem/show?pid=1709算法流程我们设置两个指针i,j;设置变量k表示以i,j为开始,两字符串相同的长度;采取滑动的方式,在On的时间内实现求解1.初始化两个指针 i=0,j=原创 2017-10-19 07:26:10 · 372 阅读 · 0 评论 -
【笔记+模板】 数论
部分概念引自百度百科和各位神犇资料,侵删。无特殊说明,基本都在mod意义下逆元定义解法费马小定理内容证明应用欧拉函数定义欧拉定理公式素性判定定理基础Miller Rabin 算法中国剩余定理积性函数定义栗子用线性筛搞出所有积性函数筛法欧拉筛 On线性筛埃氏筛 Onloglogn快速幂gcd有关gcdexgcd逆元定义:逆元素是指一个可以取消另一给定元原创 2017-09-24 21:25:47 · 1135 阅读 · 1 评论