小编jsm*_*mar的帖子

在寻找最短路径时,广度优先搜索如何工作?

我做了一些研究,我似乎错过了这个算法的一小部分.我明白了一个广度优先搜索是如何工作的,但我不明白它究竟是如何让我到一个特定的路径,而不是仅仅告诉我,每个单独的节点可以走了.我想解释我困惑的最简单方法是提供一个例子:

例如,假设我有一个这样的图形:

在此输入图像描述

我的目标是从A到E(所有边缘都没有加权).

我从A开始,因为那是我的起源.我排队A,然后立即将A排队并探索它.这产生B和D,因为A连接到B和D.因此我将B和D排队.

我将B排队并探索它,并发现它导致A(已经探索过)和C,所以我排队C.然后我排队D,并发现它导致E,我的目标.然后我将C排队,并发现它也导致E,我的目标.

我逻辑上知道最快的路径是A-> D-> E,但我不确定广度优先搜索有多精确 - 我应该如何记录路径,这样当我完成时,我可以分析结果并查看最短的路径是A-> D-> E?

另外,请注意我实际上并没有使用树,因此没有"父"节点,只有子节点.

java breadth-first-search shortest-path

114
推荐指数
5
解决办法
13万
查看次数

工厂男孩:定义依赖于其他领域的领域

如何定义依赖于其他字段使用的字段factory-boy

例如,我想定义一个email取决于first namelast nameUser.

我尝试使用post_generation装饰器.但是,我的系统需要在创建实例之前定义电子邮件.

django django-testing factory-boy django-tests

8
推荐指数
1
解决办法
2126
查看次数

如何使用rsub在同一服务器上使用多台计算机通过SSH使用sublime文本?

我们在同一台服务器上使用rsub和多台计算机.但是,我们打开的每个文件都会定向到同一台计算机.我们如何解决这个问题?

ssh sublimetext sublimetext2 sublimetext3

3
推荐指数
1
解决办法
1666
查看次数