摘要:
时间复杂度:不修改的时间复杂度 为n*logn 修改的n*pow(n,0.6666) 思想: 优化的暴力,对询问进行离线化的操作,减少一些重复的元素的时间复杂度。 应用: 针对某些以元素大小为单位的大量询问,给出了,l 和 r。 其实看到 l,r 就可以想想是不是线段树,莫队,树状数组啥的。 一般莫 阅读全文
摘要:
思想:把树拆分成 一条一条的线段(利用重链) 在变成1条线(从而利用线段树处理) 应用: 主要是 对数的lca求解,并且对lca的路径上进行查询和修改。 两次dfs 进行构建 第一次 为拆分树做准备: 重儿子 son,每一个点的深度,父亲,尺寸; int dep[M],vis[M],fa[M],so 阅读全文
摘要:
11. 有以下结构体说明和变量定义,如图所示,指针 p、 q、 r 分别指向一个链表中的三个连续结点。 struct node { int data;struct node *next;} *p, *q, *r;现要将 q 和 r 所指结点的先后位置交换,同时要保持链表的连续,以下程序段中错误的是( 阅读全文
摘要:
利用2进制的思想(把 要^的数 二进制化) 同时 将 a 化为二进制每一位的单位 a乘着走 仔细看代码 int n,m; long long P; long long qsn(long long a,long long b) // 函数中的long long { long long ans=1; / 阅读全文
摘要:
思路 遇到可以随便让你排序的题,想最优的排序。(如果很好想就不是关键,+上其他的关键知识,比如dp什么的) 如果不能谁便看出来,就想前后的关系,满足什么样的条件a才可以到b的前面。 让后进行排序 快速排序: 代码: void _qst(int l,int r) { int mid=(r+l)/2; 阅读全文
摘要:
小伙伴的博客(详细): https://www.cnblogs.com/ppp204-is-a-VC/p/11673567.html 阅读全文