04 2021 档案
摘要:越发感觉到自己的菜,大体的思路会写,但总是有一些卡住的地方,归根结底还是题做的少了。 #include<iostream> #include<cstring> using namespace std; const int N = 1e5+10; int e[N],ne[N],idx,h[N]; in
阅读全文
摘要:梯度下降就是猜测一个初始的点,然后向值变小的方向去走 这个梯度实际就是导数,我们需要找到极值点,也就是导数为0的点。初始我们猜测了一个初始值后,我们需要判断这个点接下来是向左还是向右,根据梯度$\frac{\partial cost}{\partial \omega}\(且我们需要找到一个最小的权重
阅读全文
摘要:线性模型: import numpy as np import matplotlib.pyplot as plt x_data = [1.0, 2.0, 3.0] y_data = [2.0, 4.0, 6.0] def forward(x): return x * w def loss(x, y)
阅读全文
摘要:根据某大佬的做法写的,记录一下自己的学习过程 #include<iostream> using namespace std; const int N = 1e4+10; int a,b; int p[N]; int res[N]; bool isPrime(int x){ if(x < 2) ret
阅读全文
摘要:题目描述 一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树。对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就是完全二叉树。 给定一棵完全二叉树的后序遍历,请你给出这棵树的层序遍历结果。 输入格式 输入在第一行中
阅读全文
摘要:这道题有需要将结果存储在一个单独的数组res里,再在每次题目输入n时从res数组中取出结果,否则会超时。 #include<iostream> using namespace std; const int N = 30; int n; bool dg[N],udg[N]; bool col[N];
阅读全文
摘要:#include<iostream> using namespace std; const int N = 1e4+10; int p[N]; int t; int find(int x){ if(p[x] != x) p[x] = find(p[x]); return p[x]; } int ma
阅读全文
摘要:二分 在一个区间内部去二分答案,在选择二分出的两个区间的时候都选择答案所在区间进行下一步处理, 这样可以保证区间缩小了一半并且答案也在该区间内,当区间长度为1时,区间内的数就是答案 二分的本质: 如果有单调性一定可以二分,但是可以二分的题目不一定有单调性。 边界:即定义某种性质,将整个区间一分为二,
阅读全文
摘要:二分图就是可以把所有点划分到两边去,使得所有边都是在集合之间的,而集合内部没有边。如下图: 1.1 染色法 时间复杂度:O(n+m) 用来判断一个图是不是二分图。染色法就是一个很简单的DFS。 图论的一个性质:一个图是二分图,当且仅当这个图可以被染色。 一个图是二分图,当且仅当图中不含奇数环。环是从
阅读全文
摘要:1、最小生成树 对应的图都是无向图,有向图一般不会考 一般稠密图直接朴素版Prim算法,因为短。 稀疏图就直接Kruskal算法。 堆优化版本的Prim算法一般不常用。 最下生成树有什么用:如我们有n个城市,在不同城市之间修路,让这些城市可以相互连通,则修路的最小总长度是多少。 1.1 朴素Prim
阅读全文
摘要:可以分为两类: 单元最短路 求从一个点到其他所有点的最短距离,如从1号点到n号点的最短路 多源汇最短路 起点和终点数量不确定 n表示图中点的数量,m表示图中边的数量,一般m~是稠密图 朴素Dijkstra适合稠密图,如边数比较多和一个级别用朴素Dijkstra m和n是一个级别,
阅读全文
摘要:1、拓扑排序 有向图的拓扑序列就是图的宽度优先遍历的应用 拓扑序列是针对有向图来说的,无向图是没有拓扑序列的。 存在一个序列A,对于图中的每条边(x,y),x在A中都出现在y之前,则称A是该图的一个拓扑序列。 举例:有如下一个有向图: A = (1,2,3)就是一个拓扑序列,原因如下: 首先看第一条
阅读全文
摘要:1、树和图的存储 有两种存储方式,树是一种特殊的图,无环连通图。所以只讨论图的存储方式。 图分为有向图和无向图。无向图a—b可以看作有向图ab和ba,所以无向图也可以看作一种特殊的有向图。 这样只需要考虑有向图就可以了。 1.1 邻接矩阵存储 其实就是开了一个二维数组。g[a,b
阅读全文
摘要:1、深度优先搜索DFS 不管哪条路一定要走到头,然后再往回走,往回退一步之后看看还有没有没走过的路,如果有,那么就继续对没走过的路进行DFS,如果没有就再退一步。 算法思路奇怪或者对空间要求较高用DFS。 DFS俗称暴力搜索,最重要的就是把他的顺序想明白。用一个什么样的顺序去遍历所有方案。BFS搜索
阅读全文
摘要:有N个物品和一个容量是v的背包,每个物品有两个属性:体积和价值。 我们要在背包装得下的情况下让选出的物品总价值最大。 进阶可以看看背包九讲。 动态规划是没有模板的,他的代码就是一些循环,他的核心在于状态的表示和状态的转移,比较偏向于数学的思考。 1、(0,1)背包问题 每件物品只
阅读全文
阅读目录(Content)
此页目录为空