首先java中也是有Pair类可以直接用的。在图或者相关问题中可以派上用场。 其次就是Dijkstra算法。这个算法我是看过,而且今天周赛这题(leetc5211)是挺容易想到该算法,但是我以前只看过没写过,导致我上午打开浏览器现学,结果算法学会了之后发现用邻接矩阵超内存限制,然后只好现学邻接表,学 ...
分类:
其他好文 时间:
2020-07-12 18:43:35
阅读次数:
67
双链表一个节点里面有两个指针,一个指向左边,一个指向右边 不定义头结点和尾结点了 令下标是0的点表示head 令下标是1的点表示tail 邻接表的知识:把每个点的所有邻边全部存下来 邻接表就是n个单链表 head[i]存储第i个点的邻边 1 #include <bits/stdc++.h> 2 us ...
分类:
其他好文 时间:
2020-07-11 19:14:03
阅读次数:
46
数组模拟单链表,图论的基础 单链表用的最多的是邻接表,邻接表是n个单链表,邻接表是树和图的存储方式 单链表 >> 邻接表 >> 存储树和图 单链表开始时是head指向空节点 插入元素后长这样 每个节点存储两个值 值:val 指针:next 然后用数组模拟就需要定义几个数组 e[N]:存储每个节点的v ...
分类:
其他好文 时间:
2020-07-11 17:43:21
阅读次数:
62
class Solution { public: vector<int> gardenNoAdj(int N, vector<vector<int>>& paths) { vector<int> G[N]; for (int i=0; i<paths.size(); i++){//建立邻接表 G[p ...
分类:
其他好文 时间:
2020-07-08 19:35:09
阅读次数:
62
这是一篇我犯过的各种弱智错误的合集,记录下来以备后用 1.scanf("%d",a); 2.BFS忘记设置队头元素; 3.BFS时忘记每次循环结束后head++ 3.并查集的使用:fa[find(x)] = find(y); 4.(经常导致段错误)邻接表遍历,循环时一顿操作最后忘记将当前边指针指向下 ...
分类:
其他好文 时间:
2020-07-03 21:23:44
阅读次数:
69
稀疏 sparsearray 数组 简介 矩阵中非零元素的个数远远小于矩阵元素的总数,并且非零元素的分布没有规律,通常认为矩阵中非零元素的总数比上矩阵所有元素总数的值小于等于0.05时,则称该矩阵为稀疏矩阵(sparse matrix),该比值称为这个矩阵的稠密度; 当一个数组中大部分元素为0,或者 ...
分类:
编程语言 时间:
2020-06-29 22:43:01
阅读次数:
61
一、线性表的查找 1、顺序查找: typedef KeyType int;//这个根据具体情况去定义;在这里定义为int; typedef struct{ KeyType key; InfoType otherinfo;//这个根据具体情况去改,这里只是抽象的说成还要添加这些类型。 }ElemTyp ...
分类:
其他好文 时间:
2020-06-27 13:29:49
阅读次数:
62
一、第六章内容小结 本章内容思维导图 1. 邻接矩阵储存 1 #define MVNum 100 //最大顶点数 2 typedef char VerTexType;//假设顶点的数据类型为字符型 3 typedef int ArcType;//假设边的权值类型为整型 4 5 typedef str ...
分类:
其他好文 时间:
2020-06-26 16:49:04
阅读次数:
61
单链表 两种形式 结构体形式 : 申请新节点太慢 struct List { int data; List *next; } 数组模拟 代码模板 const int N = 1e6 + 10; int e[N], ne[N], head, idx; // 初始化:head存的是头结点下标,用idx分 ...
分类:
其他好文 时间:
2020-06-25 15:24:32
阅读次数:
68
图Graph G:(V(顶点),E(边)) 定义 无向图 有向图 有向边(弧) 无向完全图:任意两顶点都有边 n个顶点的无向完全图有n*(n-1)/2条边 有向完全图: n*(n-1)条边 权:与边相关的数 网:带权的图 子图 无向图: 邻接点 度(TD): 顶点相关联边数 边数为各顶点度数和一半 ...
分类:
其他好文 时间:
2020-06-17 18:14:51
阅读次数:
80