我试图在图形中的两个节点之间找到路径,其中边缘未加权.
我正在使用广度优先搜索,它在找到目标时停止,以便找到路径的存在,但我不确定如何获取路径本身.
我试着查看访问过的节点列表,但这似乎没有帮助.我看到有人用prolog回答这个问题,但我是一名C++程序员.
我也看了一下Dijkstras algorithm,但这似乎过度杀人,因为简单的广度优先搜索让我几乎全程.
如何使用广度优先搜索获得2个节点之间的路径?
我是python编码的新手,我正在寻找一种算法,可以快速找到一个非常大的图形的起始节点和结束节点之间的所有路径 - 比如一个有大约1000个节点和10,000个边缘的图形.从起始节点到结束节点实际存在的路径数很少 - 十个或更少.为了帮助提高问题的背景,考虑一个社交网络 - 如果我有1000个朋友,我想知道我的高中朋友有多少方式从大学连接到我的室友,我不关心我的事实高中最好的朋友与我所有的200名高中朋友联系在一起,因为那些路径从未通向我的室友.我想用这个python代码做的很快就是我的两个朋友之间存在的路径的子集,并且基本上摆脱了这两个节点周围存在的所有"噪音".
我试图实现一些代码示例,所有这些代码都适用于小而简单的图形.但是,当我尝试将它们纳入我的大图分析时,它们都需要很长时间才能发挥作用.
你们都有任何调查方法的建议(即已经在networkx中创建的东西,甚至是使用堆栈与递归的信息等等),要实现的代码示例,甚至是python之外的其他路径来追求?请记住,我是一个蟒蛇新手.
我正在做一个小项目,在那里我提取报纸上的政治领袖.有时会提到一位政治家,并且没有父母或孩子有链接.(因为我猜到语义不好的标记).
所以我想创建一个可以找到最近的链接的函数,然后提取它.在下面的情况下,搜索字符串是Rasmussen,我想要的链接是:/307046.
#-*- coding: utf-8 -*-
from bs4 import BeautifulSoup
import re
tekst = '''
<li>
<div class="views-field-field-webrubrik-value">
<h3>
<a href="/307046">Claus Hjort spiller med mrkede kort</a>
</h3>
</div>
<div class="views-field-field-skribent-uid">
<div class="byline">Af: <span class="authors">Dennis Kristensen</span></div>
</div>
<div class="views-field-field-webteaser-value">
<div class="webteaser">Claus Hjort Frederiksens argumenter for at afvise
trepartsforhandlinger har ikke hold i virkeligheden. Hans rinde er nok
snarere at forberede det ideologiske grundlag for en Løkke Rasmussens
genkomst som statsministe
</div>
</div>
<span class="views-field-view-node">
<span class="actions">
<a …Run Code Online (Sandbox Code Playgroud)