图的概念
无相完全图:![n*(n-1)/2](https://latex.csdn.net/eq?n*%28n-1%29/2)
有向完全图:![n*(n-1)](https://latex.csdn.net/eq?n*%28n-1%29)
度
无向图:度就是它的边的连接数
有向图:
入度:多少个边指向这个点
出度:多少个边从这个点出发
路径
路径:一个顶点到另一顶点连续构成的序列
环路:路径起点与终点是同一点
图的储存
1.邻接矩阵储存
2.邻接表储存:
#include<bits/stdc++.h>
using namespace std;
const int N=110,M=500010;
struct Edge{
int to,dis,last;
}e[M];
int n,m;
int head[N],edge_num;
void add_edge(int from,int to,int dis){
edge_num++;
e[edge_num].to=to;
e[edge_num].dis=dis;
e[edge_num].last=head[from];
head[from]=edge_num;
}
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
int u,v,w;
cin>>u>>v>>w;
add_edge(u,v,w);
}
for(int j=1;j<=n;j++){
for(int i=1;i!=0;i=e[i].last){
printf("起点是:%d,终点是:%d,权值是:%d",j,e[i].to,e[i].dis);
}
}
return 0;
}
仅为个人笔记,不对之处请提醒,谢谢;