博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
network of emergency contacts---BFS
阅读量:6000 次
发布时间:2019-06-20

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

本题目的主要难点在如何寻找最后一层的数,利用book标记数组可以很好的解决问题。book=0的时候说明没被连接过,若要连接时,将book等于上一层book+1.

需要注意的是,对于图的问题建立邻接矩阵是非常省时间的方法。类似这个道题,我没有用邻接矩阵,因此每次都要进入150的for循环。但是如果用矩阵,最多则是每次100的循环。这样对于n*n*n.....来说则会剩下很多时间。

#include
#include
typedef struct{ int a[300]; int rear; int head;}queue;queue q;int A[150],B[150];int book[300];int test(int data[300],int startNum);void build(int data[300]){ for(int i=0;i<300;i++) data[i]=rand()%100+1;}void main(){ //freopen("intput.txt","r",stdin); int data[300]; for(int l=0;l<10;l++){ build(data); printf("%d\n",test(data,data[0])); }}int test(int data[300],int startNum){ for(int i=0;i<300;i++) book[i]=0; for(int i=0,j=0;i<299;j++){          //将数据分为两个数组中A表示边的出发点,B表示边的终点 A[j]=data[i]; B[j]=data[i+1]; i=i+2; } q.rear=0; q.head=0; q.a[q.rear++]=startNum; book[startNum]=1; while(q.head
=0;i--){            //寻找最大层数总最大值 if(book[i]==c){ max=i; break; } } return max;}

 

转载于:https://www.cnblogs.com/lvcoding/p/6600355.html

你可能感兴趣的文章
如何配置IntelliJ IDEA发布JavaEE项目?
查看>>
解密 阿里巴巴大数据女程序员瑞清代码诗!
查看>>
阿里云 Aliplayer高级功能介绍(九):自动播放体验 ...
查看>>
05.java多线程问题
查看>>
Centos下编译安装Samba
查看>>
个人安装caffe过程中遇到的问题及解决方案
查看>>
SAP如何查看会计凭证
查看>>
短视频平台开发时那些容易掉进去的“深坑”
查看>>
制造业瓶颈如何突破?“智变与突破——制造业人工智能产业峰会·南京”来献策 ...
查看>>
弹性计算双周刊 第23期
查看>>
阿里云发布2019数字化趋势报告,未来5年零售业数字化程度将达80%
查看>>
阿里云DDoS高防IP防御原理、功能优势及价格收费详解
查看>>
High Level REST Client 访问阿里云6.3 Elasticsearch 实例实现
查看>>
zabbix 添加mysql监控(用自带模板)
查看>>
洛谷 P3819 松江1843路
查看>>
网站架构的逐步优化演变
查看>>
125.53亿元!融创收购泛海北京泛海国际项目及上海董家渡项目
查看>>
Firefox 将添加画中画功能
查看>>
Spring Boot(07)——ConfigurationProperties介绍
查看>>
动力节点Java学习资料为互联网应用文件存储而生之FastDFS
查看>>