本文整理汇总了Python中sage.graphs.graph.Graph.hamiltonian_cycle方法的典型用法代码示例。如果您正苦于以下问题:Python Graph.hamiltonian_cycle方法的具体用法?Python Graph.hamiltonian_cycle怎么用?Python Graph.hamiltonian_cycle使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sage.graphs.graph.Graph
的用法示例。
在下文中一共展示了Graph.hamiltonian_cycle方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: hamiltonian_cycle
# 需要导入模块: from sage.graphs.graph import Graph [as 别名]
# 或者: from sage.graphs.graph.Graph import hamiltonian_cycle [as 别名]
def hamiltonian_cycle(self, algorithm = "tsp", *largs, **kargs):
store = lookup(kargs, "store", default = discretezoo.WRITE_TO_DB,
destroy = True)
cur = lookup(kargs, "cur", default = None, destroy = True)
default = len(largs) + len(kargs) == 0 and \
algorithm in ["tsp", "backtrack"]
if default:
if algorithm == "tsp":
try:
out = Graph.hamiltonian_cycle(self, algorithm, *largs,
**kargs)
h = True
except EmptySetError as out:
h = False
elif algorithm == "backtrack":
out = Graph.hamiltonian_cycle(self, algorithm, *largs, **kargs)
h = out[0]
try:
lookup(self._graphprops, "is_hamiltonian")
except KeyError:
if store:
self._update_rows(ZooGraph, {"is_hamiltonian": h},
{self._spec["primary_key"]: self._zooid},
cur = cur)
update(self._graphprops, "is_hamiltonian", h)
if isinstance(out, BaseException):
raise out
else:
return out
else:
return Graph.hamiltonian_cycle(self, algorithm, *largs, **kargs)