图遍历问题

图遍历问题图遍历问题分为四类遍历完所有的边而不能有重复,即所謂“一笔画问题”或“欧拉路径”;遍历完所有的顶点而没有重复,即所谓“哈密尔顿问题”。遍历完所有的边而可以有重复,即所谓“中国邮递员问题”;遍历完所有的顶点而可以重复,即所谓“旅行推销员问题”。对于第一和第三类问题已经得到了完满的解决,而第二和第四类问题则只得到了部分解决。第一类问题就是研究所谓的欧拉图的性质,而第二类问题则是…

大家好,又见面了,我是你们的朋友全栈君。

图遍历问题分为四类

遍历完所有的边而不能有重复,即所謂“一笔画问题”或“欧拉路径”;

遍历完所有的顶点而没有重复,即所谓“哈密尔顿问题”。

遍历完所有的边而可以有重复,即所谓“中国邮递员问题”;

遍历完所有的顶点而可以重复,即所谓“旅行推销员问题”。

对于第一和第三类问题已经得到了完满的解决,而第二和第四类问题则只得到了部分解决。

第一类问题就是研究所谓的欧拉图的性质,而第二类问题则是研究所谓的哈密尔顿图的性质。

图的基本知识   

顶点:图中的数据元素称为顶点

有向图:有方向的图叫有向图

无向图:没有方向的图叫无线图

完全图:有n(n-1)/2条边的无向图称为完全图

有向完全图:具有n(n-1)条弧的有向图称为有向完全图

稀疏图:有很少条边或弧的图称为稀疏图,反之称为稠密图

权:与图的边或弧相关的数叫做权(weight)

例子1:

           图的深度遍历   

Time Limit: 1000MS   

Memory limit: 65536K

题目描述

请定一个无向图,顶点编号从0到n-1,用深度优先搜索(DFS),遍历并输出。遍历时,先遍历节点编号小的。

输入

输入第一行为整数n(0 < n < 100),表示数据的组数。 对于每组数据,第一行是两个整数k,m(0 < k < 100,0 < m < k*k),表示有m条边,k个顶点。 下面的m行,每行是空格隔开的两个整数u,v,表示一条连接u,v顶点的无向边。

输出

输出有n行,对应n组输出,每行为用空格隔开的k个整数,对应一组数据,表示DFS的遍历结果。

示例输入

1
4 4
0 1
0 2
0 3
2 3

示例输出

0 1 2 3
【】

 

转载于:https://www.cnblogs.com/Roni-i/p/8608569.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135585.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 欧拉函数

    欧拉函数问题:求[L,R]中K(假设φ(n)表示1..n-1中与n互质的数的个数。对于[L,R]中的任意一个除K以外的整数y,满足φ(K)≤φ(y)且φ(K)=φ(y)时,K<y),K是[L,

    2022年7月2日
    25
  • Java课程设计源码——学生信息管理系统 SQL「建议收藏」

    Java课程设计源码——学生信息管理系统 SQL「建议收藏」packageshujuku;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.util.*;importjava.sql.*;importjavax.swing.table.*;classallstudentextendsJFrameimplementsAct…

    2022年10月15日
    0
  • JavaScript正则表达式(完整版)

    JavaScript正则表达式(完整版)JavaScript正则表达式1.构建正则表达式字面量创建varreg=/正则表达式/修饰符构造函数创建varreg=newRegExp(‘正则表达式’,’修饰符’)修饰符​ i:ignoreCase,匹配忽视大小写​ m:multiline,多行匹配​ g:global,全局匹配2.正则表达式调用(实例方法)1.exec​ 匹配字符串和正则表达式的方法,​ 匹配成功:​ 返回一个数组[匹配内容,index:匹配的起始位置,

    2025年7月25日
    0
  • Android 多线程下载网络文件

    Android 多线程下载网络文件

    2021年8月23日
    41
  • python qt是什么_初识Python与Qt「建议收藏」

    python qt是什么_初识Python与Qt「建议收藏」Python的3.0版本,在开发阶段被称为Python3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python3.0在设计的时候就没有考虑向下兼容。许多针对早期Python版本设计的程序都无法在Python3.0上正常运行。为了照顾现有程序,Python2.6作为一个过渡版本,基本使用了Python2.x的语法和库,同时考虑了向Pyt…

    2022年5月13日
    50
  • 飞机的侧向气动力和力矩[通俗易懂]

    飞机的侧向气动力和力矩[通俗易懂]主要研究的内容:(侧向力:滚转和偏航)1、产生侧力的部件和侧力的计算2、滚转力矩和偏航力矩的计算3、滚转静稳定导数和偏航静稳定导数{还记得的部分:1、方向舵是朝上还是朝下,决定着是正向力矩还是反向力矩(滚转力矩?)2、对于来流方向的两次分解,用来确定上反角(下反角)对于滚转力矩的影响3、除了上反角,还有一个什么角度也是会影响到滚转力矩来着?4、归一化角速率是啥…

    2022年5月14日
    54

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号