邻接表存储图利用BFS遍历

//今天上机写的邻接表存储图利用BFS遍历:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<iostream>
using namespace std;
struct node//存节点所连接的点
{int id;node *next;
};
struct list//存各个节点的顶点值
{int data;node *first;
}AdjList[1000];
struct ALGraph
{int v,n;//v顶点数,边数
}ALGraph;
int vis[1000];//访问标记 
void create_list(node *&head,int n)
{node *p=head;for(int i=0;i<n;++i){node *pnew=new node;scanf("%d",&pnew->id);pnew->next=NULL;p->next=pnew;p=p->next;}p->next=NULL;p=head->next;while(p){printf("%d ",p->id);p=p->next;}putchar('\n');
}
void createAdjList()
{printf("请输入领接表的顶点和弧数:");scanf("%d%d",&ALGraph.v,&ALGraph.n);for(int i=1;i<=ALGraph.v;++i){printf("请输入第%d个顶点值\n",i);scanf("%d",&AdjList[i].data);printf("请输入该点所相邻点的个数:");int n;scanf("%d",&n);printf("如果相邻点存在请输入各个顶点,不存在请输入下个顶点信息\n");node *head=new node;if(n>0){create_list(head,n);AdjList[i].first=head->next;//第一个为空}elseAdjList[i].first=NULL;}
}
void BFS()
{printf("%d ",AdjList[1].data);for(int i=1;i<=ALGraph.v;++i){while(AdjList[i].first&&!vis[i]){printf("%d ",AdjList[i].first->id);AdjList[i].first=AdjList[i].first->next;vis[i]=1;}}/*for(int i=1;i<=ALGraph.v;++i){cout<<AdjList[i].data<<" ";while(AdjList[i].first){printf("%d ",AdjList[i].first->id);AdjList[i].first=AdjList[i].first->next;}putchar('\n');}*/putchar('\n');
}
int main()
{memset(vis,0,sizeof(vis));int x;createAdjList();BFS();return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/510243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows 安装tensorflow2.0

预先装好python 然后在命令行输入&#xff1a; gpu版本&#xff1a; 需要预先装好&#xff1a;cuda 和cudnn 才能使用。 pip install numpy pandas matplotlib sklearn tensorflow-GPU2.0.0-alpha0 -i https://pypi.doubanio.com/simple cpu 版本&#xff1a; alpha0 &…

解决虚拟机打开不了?提示VMware Workstation cannot connect to the virtual machine的问题

解决方法&#xff1a; 从提示消息我们可以看到&#xff0c;问题在于VMware授权服务没有开启&#xff0c;具体处理方法如下&#xff1a; No1. "This PC&#xff08;我的电脑&#xff09;"---右键"manage&#xff08;管理&#xff09;"---"Service and…

双目立体匹配算法

Loopy belief propagation, Markov Random Field, stereo vision website&#xff1a;http://nghiaho.com/?page_id1366

Redis-3.2.4服务搭建

1.下载安装包并解压 全部版本地址&#xff1a;http://download.redis.io/releases 安装包下载&#xff1a; http://download.redis.io/releases/redis-3.2.4.tar.gz 我们这里使用3.2.4 2.编译安装 cd redis-3.2.4 make && make install 可能异常&#xff1a;&…

Android Fragment 真正的完全解析(上)

转载请标明出处&#xff1a;http://blog.csdn.net/lmj623565791/article/details/37970961 自从Fragment出现&#xff0c;曾经有段时间&#xff0c;感觉大家谈什么都能跟Fragment谈上关系&#xff0c;做什么都要问下Fragment能实现不~~~哈哈&#xff0c;是不是有点过~~~ 本篇博…

Hbase Import导入数据异常处理-RetriesExhaustedWithDetailsException

CDH显示 问题导致原因&#xff1a; hbase org.apache.hadoop.hbase.mapreduce.Import -Dmapred.job.queue.nameetl crawl:wechat_biz /hbase/test4 执行import时&#xff0c;短时间内写入数据量过大导致写入异常。 18/09/11 09:44:27 INFO mapreduce.Job: Task Id : attempt_…

Android RecyclerView 使用完全解析 体验艺术般的控件

转载请标明出处&#xff1a; http://blog.csdn.net/lmj623565791/article/details/45059587&#xff1b; 本文出自:【张鸿洋的博客】 概述 RecyclerView出现已经有一段时间了&#xff0c;相信大家肯定不陌生了&#xff0c;大家可以通过导入support-v7对其进行使用。 据官方的…

三维刚体变换

1.旋转向量&#xff1a; 满足以下关系 (E单位阵) 进一步得到&#xff1a; p经过旋转和平移得到,公式表达如下&#xff1a; ;(t平移矩阵) 我们可以将上面的式子写成齐次&#xff1a; T也成为变换举证&#xff08;transform Matrix&#xff09; 它的反变换可以表示如下&am…

Hbase1.2数据导入2.0

场景&#xff1a;现有一批之前导出的数据&#xff0c;发现2.0版本hbck工具更新&#xff0c;无法直接导入&#xff0c;跨机房使用export/import方式需要重新外网传输数据比较耗时&#xff0c;现搭建临时hbase版本1.2&#xff0c;在同机房进行export/import方式 数据导入hbase1.…

html 中 标签里面的id 和 name 有什么区别?

html 中 标签里面的id 和 name 有什么区别&#xff1f; id与name的作用,作为标签的标识符,基本上是一样的.name是老方法,id是在name基础上发明的,后来才有的. 一般来说,js中使用ID,asp或php中使用name.比如,在js中要引用这个标签,就需要这个ID是什么,而asp中要得到这个值,就会…

远程桌面管理工具

链接&#xff1a;https://pan.baidu.com/s/1K_AMitnmpYQkRWSBq9HhVA 提取码&#xff1a;d9eo

Impala-shell 查询异常 - ERROR: AnalysisException: Failed to evaluate expr: 1

直接使用impala-shell 进行最近本查询&#xff0c;异常 [test:21000] default> select * from tbName limit 1; Query: select * from vt_article limit 1 Query submitted at: 2018-09-14 13:43:10 (Coordinator: http://fwqzx002:25000) ERROR: AnalysisException: Fail…

手把手教你写平衡二叉树

因为上BST课的时候睡觉睡过了结果。。。&#xff0c;后者折腾了一个下午才写了出来&#xff0c;感谢http://blog.chinaunix.net/uid-24948645-id-3913917.html博客的详细解析&#xff0c;但是上面的不足之处在于代码是伪代码&#xff0c;基本实现不了&#xff0c;然后自己做了修…

视觉算法算法

https://github.com/rayryeng/XiaohuLuVPDetection https://xiaohulugo.github.io/papers/Vanishing_Point_Detection_WACV2017.pdf 三维重建 http://staff.ustc.edu.cn/~lgliu/ pnp问题&#xff1a; https://github.com/ydsf16/PnP_Solver slam文章&#xff1a; https:/…

CDH - 启动HbaseMaster时异常

测试环境 CDH,启动HbaseMaster时&#xff0c;启动失败&#xff0c;提示无法split WALs目录下的数据。 解决方法&#xff1a;删除WALs里的数据解决该问题&#xff08;数据如不可恢复勿用该方法&#xff09;&#xff0c;重启成功 2018-09-14 14:43:07,254 WARN org.apache.hado…

HTML之标签

2.3.1标签1.开始标签<html> </html> 表示html的开始<head> </head> 描述html文档的相关信息&#xff0c;之间的内容是不会在浏览器的框内显示出来的<body> </body> 在浏览器中显示主要内容&#xff0c;也是html文件的主要部分。2.单独出现…

cuda编程性能 分析工具 nvprof的使用

ubuntu环境上&#xff0c;安装cuda,会自动安装一些工具nvcc ,nvprof nvcc-gdb.... 1.编译生成可执行文件 2.nvprof ./test 可以把性能分析数据输出到文件中 nvprof ./test -o test.nvvp 可以把在nvidia visual profiler现实更加直观 一些常用的配置参数&#xff1a; achie…

HUE Load Balancer 启动失败

安装LoadBalancer服务的机器要安装mod_ssl&#xff0c;httpd 解决方案&#xff1a; yum -y install mod_ssl 注意&#xff1a;安装前也要安装httpd服务&#xff0c;安装完成后记得查看是否启动 yum -y install httpd 异常信息如下&#xff1a; Cant open /opt/cm-5.13.0/r…

cuda nsight 调试和性能分析

如果cuda需要调试需要在配置cmake: cmake配置 set(CUDA_NVCC_FLAGS -G;-g) 命令行编译配置&#xff1a; nvcc –g –G MatrixCUDA.cu –o MatrixCUDA 打开 nvidia nsight monitor ->options进行设置 2.尽量把WDDM TDR Delay 调大点 3.将 use this monitor for cuda att…