当前位置: 首页 > news >正文

东莞网站推广定制公司呼市推广网站

东莞网站推广定制公司,呼市推广网站,自己可以做网站吗,房地产十大营销手段文章目录 1、BFS1、DFS 1、BFS 广度优先。确定从哪个点开始#xff0c;然后用队列来完成遍历。拿出一个点就把和这个点相连的其它点放进去#xff0c;但是这样前面放进过队列的也有可能被再次放入#xff0c;所以需要做好标记。一个队列#xff0c;一个标记容器。在邻接矩… 文章目录 1、BFS1、DFS 1、BFS 广度优先。确定从哪个点开始然后用队列来完成遍历。拿出一个点就把和这个点相连的其它点放进去但是这样前面放进过队列的也有可能被再次放入所以需要做好标记。一个队列一个标记容器。在邻接矩阵里写。 void BFS(const V src){size_t srci GetVertexIndex(src);//队列和标记数组queueint q;vectorbool visited(_vertexs.size(), false);q.push(srci);visited[srci] true;size_t n _vertexs.size();while (!q.empty()){int front q.front();q.pop();cout front : _vertexs[front] endl;//把front点的邻接顶点放进队列for (size_t i 0; i n; i){if (_matrix[front][i] ! MAX_W !visited[i]){q.push(i);visited[i] true;}}}cout endl;}测试代码 void TestGraphBDFS(){string a[] { 张三, 李四, 王五, 赵六, 周七 };Graphstring, int g1(a, sizeof(a) / sizeof(string));g1.AddEdge(张三, 李四, 100);g1.AddEdge(张三, 王五, 200);g1.AddEdge(王五, 赵六, 30);g1.AddEdge(王五, 周七, 30);g1.BFS(张三);}我们加入别的功能现在要记录走了几层。比如对于A来说连接BB连接CB是A的第一层节点C是A的第二层节点。 void BFS(const V src){size_t srci GetVertexIndex(src);//队列和标记数组queueint q;vectorbool visited(_vertexs.size(), false);q.push(srci);visited[srci] true;int levelSize 1;size_t n _vertexs.size();while (!q.empty()){for (int i 0; i levelSize; i){int front q.front();q.pop();cout front : _vertexs[front] ;//把front点的邻接顶点放进队列for (size_t i 0; i n; i){if (_matrix[front][i] ! MAX_W !visited[i]){q.push(i);visited[i] true;}} }}cout endl;levelSize q.size();}测试代码 void TestGraphFS(){string a[] { 张三, 李四, 王五, 赵六, 周七 };Graphstring, int g1(a, sizeof(a) / sizeof(string));g1.AddEdge(张三, 李四, 100);g1.AddEdge(张三, 王五, 200);g1.AddEdge(王五, 赵六, 30);g1.AddEdge(王五, 周七, 30);g1.BFS(张三);}1、DFS 深度优先。 不是从起始点开始走从连接起始点的一个点开始走上图的顺序就是ABCFDD不能到A就返回到FF还有边没走于是HI然后I没有可走的回到HH也没有可走的了一直回到BB还有E可走然后BEG再从G返回到。深度的话就是走递归但因为是图比较复杂层数多的话就不要深度了。 void _DFS(size_t srci, vectorbool visited){cout srci : _vertexs[srci] endl;visited[srci] true;//找一个srci相邻的没有访问过的点for (size_t i 0; i _vertexs.size(); i){if (_matrix[srci][i] ! MAX_W visited[i] false){_DFS(i, visited);}}}void DFS(const V src){size_t srci GetVertexIndex(src);vectorbool visited(_vertexs.size(), false);_DFS(srci, visited);}测试代码 void TestGraphFS(){string a[] { 张三, 李四, 王五, 赵六, 周七 };Graphstring, int g1(a, sizeof(a) / sizeof(string));g1.AddEdge(张三, 李四, 100);g1.AddEdge(张三, 王五, 200);g1.AddEdge(王五, 赵六, 30);g1.AddEdge(王五, 周七, 30);g1.DFS(张三);}用邻接矩阵的话如果是稠密图还好稀疏图就得循环更多没有值的地方。 如果图不是连通图那么两个搜索其实都会受影响会出现到了某个位置遍历断掉了。如何保证遍历所有的顶点解决办法就是遍历一次后再找后面有false的点以这个点作为起点再次开始循环就可以了。 本篇gitee 下一篇写最小生成树问题。 结束。
http://www.yutouwan.com/news/318474/

相关文章:

  • 如何做电子书网站开源镜像网站开发
  • 用asp.net做的网站框架泰安网站制作公司电话
  • 网站公司动态做不了怎么办衡阳县建设局网站
  • 做演讲和做演讲视频网站阿里邮箱注册
  • 如皋网站开发公司建造师人才网交流平台
  • 微信做购物网站怎么抽佣做网站学哪个语言最好
  • 网站源码网站电商培训机构排名
  • 浏览器打开网站404网站优化推广 site
  • 网站手机端制作软件个人怎么做微信公众号和微网站吗
  • oecms(php企业网站管理系统)姜堰住房和城乡建设厅网站首页
  • 动漫网站开发设计思想手机有些网站打不开怎么解决
  • 公司网站简介怎么做wordpress汉化插件软件
  • 免费合同模板网站中国招标网官网首页
  • 襄樊seo快速排名seo引擎优化工具
  • 一个网站备案号是冒用其它公司的企业文化培训心得体会
  • 天津营销网站建设联系方式成都网站建设 平易云
  • 网站帮助中心设计邯郸招工信息网
  • 怎样在手机上制作网站visual studio
  • 网站双机热备怎么做西安市做网站公司有哪些
  • 网站没有icp备案怎么访问南昌装修公司
  • 网站建设 案例互联网装饰网站
  • 销售网站模板搭建视频服务器
  • 网站开发流程pptwordpress指定关键词自动内链
  • 珠宝企业的门户网站开发知乎自媒体平台注册
  • wamp在网站建设中的功能及协作关系深圳网站seo优化公司
  • 阿里云备案 网站备案域名购买什么网站从做系统
  • 营销型网站建设调查表如何做公司介绍视频网站
  • 如何备份网站网站做营销推广的公司
  • 商丘网站建设推广渠道企业网站建设的意义
  • 票务网站开发端口iis网站目录权限