- 博客(14)
- 收藏
- 关注
转载 二分查找&&二分中位数
普通二分查找 1 int bs(int L,int R,int x) 2 {//在l到r区间上查找x,找不到就返回-1 3 int l=L,r=R; 4 while(l<=r){ 5 int m=l+r>>1; 6 if(a[m]==x){ 7 return m;...
2019-09-23 14:42:00 1002
转载 代码规范&数学之美读后感
代码规范1.缩进:四格2.大括号的使用括号: for(;;){ } while(){ }3.运算符两端加空格其他:https://blog.csdn.net/freeking101/article/details/78930381数学之美读后感(本读后感对应数学之美1.14谈谈数学模型的重要性) 什么是数学模型呢?数学模...
2019-09-05 23:03:00 154
转载 读入输出优化: ios::sync_with_stdio(false);
注意不能混用scanf和printf ios::sync_with_stdio(false);转载于:https://www.cnblogs.com/qq2210446939/p/11232830.html
2019-07-23 16:52:00 182
转载 第七章小结——查找
查找首先是定义: 查找表:由同一类型的数据元素(或记录)构成的集合。 关键字:标识记录数据项的值,唯一标识就是主关键字,否则就是次关键字。 动态和静态:查找的同时进行修改,例如插入或删除,就是动态,否则就是静态。 平均查找长度: 其中pi为查找表中第i个记录的概率,Ci为找到表中其关键字与给定值相等的第i个记录时,和给定值已...
2019-06-02 17:36:00 145
转载 学习报告1
在上周五的不知道哪里的省赛重现中,遇到了快速等比数列求和取余;公式推导 1 int dfs(int x,int b) 2 {//求出x1+x2+。。。x的b次方的和,并取模tt 3 if(b==0) return 0; 4 if(b==1) return x%tt; 5 int sum=dfs(x,b/2);//求出x1+...
2019-05-28 17:45:00 83
转载 最小生成树——普利姆 克鲁斯卡尔
最小生成树生成树定义:是原图的一个极小连通子图,含有原图的全部顶点,但只有n-1条边。它连通但边只有n-1,也就是说任意让两点连边必定成环,不过这结论好像没啥用。最小生成树:对于一张图的生成树可能有多种,对于边权和最小的一种就是最小生成树了。prim算法首先首先,我们来几个标识,原图是N={V,E},TE是N上最小生成树的边集,然后有个已选点集合U,那么未选点...
2019-05-16 13:46:00 179
转载 并查集
个人理解:并查集就是对数据分块,并查找任意数据是否在同一块里面,用到的是''标记"思想,在每一块中选一个队长,掌门,经理。。。。。总之这个特殊数据就代表了他所在的这一块,任意两数据比较他们的掌门就能知道是不是属于同一块了。查:就是寻找掌门;并:就是将两个块的掌门变成同一个;实现:首先pre[i]装着i的上级,当p[i]=i的时候,他就是掌门;查找掌门的代码:i...
2019-05-11 19:43:00 87
转载 线性筛——素数筛,莫比乌斯筛,欧拉函数筛
质数筛暴力版:1 bool prime(int n)2 {3 for(int i=2;i<=sqrt(n);i++)4 if(n%i==0) return false;5 6 return true;7 }如果给定区间1到n,判断每一个数是不是质数,每个数都要从2开始暴搜,就某得灵魂。普通筛:...
2019-05-06 19:31:00 188
转载 第五章总结
二叉树 定义很重要,没错,我就默一遍吧。(最简单的不写) 结点的度:结点拥有的子树个数(分支数); 祖先:根到该结点所经分支上的所有的结点; 树的度:树内结点度的最大值; 树的高度(深度):树的最大层次; 然后是二叉树的性质,也很重要我也来一遍吧。证明错了请指...
2019-05-04 16:22:00 143
转载 字符串哈希&子串匹配
字符串哈希 字符串哈希就是将一个字符串映射为一个整数,该整数就可以用于vis标记有没有出现过,就不用遍历所有字符串了。 哈希公式: hash[i] = hash[ i - 1 ] *p + id( s[i] )其中id(x)为x-‘a’+1或者x的ask码,p为质数。例如对abcd哈希: 可以看到,在求abcd的过程,也顺便把abc...
2019-04-24 21:40:00 1058
转载 第四章小结
大战1-8 没错,天梯赛让我自闭的题目,终于ac了。在天梯赛,我的思想是把空格,问号,i和me与大小写处理好,然后将句子的每一个单词放入一个二维数组,然后就很容易用cmp比较can you和could you了。在比赛后我仍使用这思想,敲出来了: 1 #include<iostream> 2 #include<cstring>...
2019-04-14 22:25:00 106
转载 第三章总结
第三章 在第三章我们学习了栈和队列的有关知识,队列是先进先出,栈是后进先出,这只是运算规则,没什么好谈的。 但他们的价值应体现在实际问题中,什么时候用他们会更有利于我们的思维,就拿老师在课堂上的题举例,进制转换,取模得出来那个数要倒着输出,最普通的话可以用数组,多个变量记下标就好,但这样我们的思维只局限于一层,但如果用栈的话,栈就像一个黑箱子(当然我们也要自...
2019-03-31 22:08:00 110
转载 快速幂(取模)
快速幂就是快速求ab 直接for循环的时间复杂度是o(n),比较low。那么如何提高时间复杂度呢,幂的本质是连乘,其中b可以写成二进制,拆成2的幂。拿a的11次方为例,11的二进制是1011,所以可以得到11=20+21+23,于是,a的11次方可以写成a^20 * a^21 * a^23,这样就变成三个数的乘积了,快了很多,那么怎么求这三个数呢,看看我们怎么写出这三个数...
2019-03-29 17:34:00 104
转载 第二章内容小结以及资料分享
第二章内容小结 顺序表很简单就不说了,链表的构思很简单,但难在于它的具体实现,例如操作的特殊情况:在头尾操作,链表为空等,寒假在acm敲了很多代码所以学习过程中基本并没有遇上什么问题,这里我就归纳几个鄙人认为的需要注意的点。Linklist 和 LNode* 的数据类型都是指向LNode的指针,只是用前者强调定义头指针增加首节点...
2019-03-17 17:05:00 121
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人