博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图论—图的储存
阅读量:4459 次
发布时间:2019-06-08

本文共 939 字,大约阅读时间需要 3 分钟。

增加一条无向边

1 void add(int a,int b,int c)  //a到b有一条长度为c的边 2 {3     ++p;4     e[p].to = b;        //这条边到达b点 5     e[p].w = c;            //权值是c 6     e[p].next = head[a];//加入这条边 7     head[a] = p;        //改变头指针 8 }

遍历

1 void trave()  //遍历 2 {3     for(int i=head[1];i!=0;i=e[i].next)4     {5         //... 6     }7 }

合起来就成这样了

1 #include
2 3 using namespace std; 4 5 const int N = 10010 ; 6 7 struct edge{ 8 int to,w,next; 9 }e[N<<1]; //e存储边,to是这条边到达的点,w权值,next下一条边 10 int head[N],p; //头指针 11 12 void add(int a,int b,int c) //a到b有一条长度为c的边 13 {14 ++p;15 e[p].to = b; //这条边到达b点 16 e[p].w = c; //权值是c 17 e[p].next = head[a];//加入这条边 18 head[a] = p; //改变头指针 19 }20 void trave() //遍历 21 {22 for(int i=head[1];i!=0;i=e[i].next)23 {24 //... 25 }26 }27 int main()28 {29 //...30 return 0;31 }

 

转载于:https://www.cnblogs.com/mjtcn/p/6826990.html

你可能感兴趣的文章
7. 单位,移动布局
查看>>
inux中bin与sbin目录的作用及区别介绍
查看>>
USACO 3.1 Contact
查看>>
Office之什么是高内聚低耦合
查看>>
一些奇怪的问题求回答
查看>>
这些年踩过的坑
查看>>
iOS开发拓展篇——如何把项目托管到GitHub
查看>>
性能优化之数据库优化
查看>>
类的继承、菱形继承、派生、多态
查看>>
mysql约束
查看>>
javascript鼠标及键盘事件总结及案例
查看>>
mysql表之间的关系及级联操作
查看>>
mac 搭建virtualenv的那些坑
查看>>
多路复用IO模型
查看>>
2019秋招复习笔记--数据库基本操作
查看>>
2019秋招复习笔记--智力题
查看>>
MySQL学习笔记
查看>>
面试题
查看>>
DS博客作业08-课程总结
查看>>
利用Python爬虫刷店铺微博等访问量最简单有效教程
查看>>