自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 负环——spfa

#include<iostream> #include<cstdio> #include<queue> #include<algorithm> #include<cstring> using namespace std; const int maxm = 3e3+5, maxn = 2e3+5; const int INF = 0x3f3f3f3f; struct edge{ int v, w, next; }e[maxm<<1];

2021-03-29 01:01:37 89

原创 二叉树——求先序和后序

已知中序,后序求先序 #include<iostream> #include<cstdio> #include<string> #include<sstream> using namespace std; int in[100], post[100]; int n; bool read_list(int *a) { string s; if(!getline(cin, s)) return false; stringstream ss(s);

2021-03-29 00:51:59 227

原创 图论——链式前向星

概述 链式前向星是解决图论的一种方法,一开始接触会有点绕,但是真的好用!首先要有个意识,这个方法的出发点是以边为核心建结构体,这个结构体有一个很妙的变量next,是用来存同一起点的上一条边的编号。除了结构体之外,再建一个head数组,head[i]存的是i作为起点的最后一条边的编号。通过next和head的结合,可以巧妙地进行存边、遍历等操作。 结构体 建结构体时应注意,如果题目给了m条边,应该结构体数组应该2*m个空间(因为双向)。 struct Edge { int v, w, next; }e

2021-03-10 14:59:09 185

原创 背包问题

01背包 int v = {0, 1, 2, 3, 4};//value int w = {0, 1, 2, 3, 4};//weight int func(int k, int c) {//k种物品,背包容量为c for (int i = 0; i <= k; i++) { for (int j = c; j >= w[i]; j--) ans[j] = max(ans[j], ans[j - w[i]] + v[i]); } return ans[c]; } 完全背包

2021-03-02 23:25:35 90

原创 最小生成树——prim

简述 prim和Kruskal都是解决最小生成树的算法,Kruskal主要用于解决顶点多但边稀疏的图,prim主要用于解决边稠密的图。 c++ ll prim(int n) { memset(vis, 0, sizeof(vis)); for(int i = 1; i <= n; i++) { d[i] = e[1][i]; } vis[1] = 1; ll ans = 0; for(int k = 2; k <= n; k++) { int x, m = INF; fo

2021-03-02 00:37:19 120

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除