我正在尝试做很多编程练习来理解概念并通过解决它们来获得实践经验。
我偶然发现了一个练习,它给出了一组关于图形是什么样子的条件,并要求你找出哈密顿循环是否可能,如果有,打印出一个可能性。
由于该练习使用的是我的母语,因此我已尽我所能翻译,内容如下:
假设有一个图形G=(V,E),具有顶点数V和边数E。我们将N(v)表示为连接到 v 的顶点集。一个顶点的相邻顶点的数量称为 rank,我们用rank(v)表示它。
如果图形 G 是 conex 并且对于图形的每个顶点都满足以下条件,我们说图形 G 很奇怪:
- 等级(v)>=2
- 如果rank(v)=2则其他两个顶点不通过边相互连接。
- 如果rank(v)>2则 v 的相邻顶点集合存在一个顶点u ( u ∈ N(v) ),所以以下性质为真: I. Rank(u)=2 AND II。v的相邻顶点的每隔两个不同的顶点(w1,w2 ∈ N(v)-{u} )相互连接,因此(w1,w2) ∈ E。
需要解决的每个图都被认为是一个“奇怪的”图。
如何解决这个问题?您需要借助条件大大减少计算时间,但我想不出用它们搜索哈密顿循环的技巧/模式。提前致谢。