
算法笔记经典题
包括图 BFS 树状数组
重you小垃
这个作者很懒,什么都没留下…
展开
-
序列的左边比它小的元素个数(元素范围大)+离散化(算法笔记p476)
给定一个序列,每个元素小于等于10^9,统计序列中元素左边比该元素小的元素个数。分析: 使用树状数组,由于c[]不可能开10^9这么大,所以,需要将每个元素离散化。原创 2021-07-11 11:34:02 · 523 阅读 · 0 评论 -
算法笔记p278:迷宫最短距离
#include <bits/stdc++.h>using namespace std;const int N = 10;char mp[N][N];bool inq[N][N]; //标志数组 int n, m;int x[4] = {0, 0, 1, -1};int y[4] = {1, -1, 0, 0};struct node{ int x; int y; int stp; //步数 } S, T, Node; //S:起点 T:终点 int judg..原创 2021-05-06 17:43:23 · 181 阅读 · 0 评论 -
算法笔记p354:找头目(DFS)
注意 : 无向图中,输入时会有重复顶点之间的边权(用邻接矩阵,用邻接表的话比较复杂)并且累计(将G初始为0)难点1:点权和:在输入的时候直接处理难点2:找出连通块中点权最大的顶点:深度搜索的时候递归入口处就更新难点3:连通块中顶点的个数:深度搜索的时候递归入口处累加难点4:通块中边权和:先累加上边权,然后把边权去掉,再考虑结点是否访问#include <bits/stdc++.h> using namespace std;const int MAXV = 2010; //...原创 2021-05-15 12:07:52 · 131 阅读 · 2 评论