问题标签 [bacon-number]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 计算“凯文培根”数字
我一直在玩一些东西,并想出了试图找出凯文培根数字的想法。我有一个网站的数据,为此我们可以考虑一个社交网络。让我们假设它是 Facebook(为了简化讨论)。我有人,我有他们朋友的名单,所以我有他们之间的联系。如何计算一个人到另一个人的距离(基本上是凯文培根数)?
我最好的想法是具有深度限制的双向搜索(以限制计算复杂性并避免在图中根本无法连接的人的问题),但我意识到这是相当蛮力的。
制作小的子图(比如 Facebook 上的群组),计算它们之间的最短距离(也许是提前),然后尝试使用 THOSE 来查找链接会更好吗?虽然这需要预先计算,但它可以搜索更少的节点(节点可以是组而不是个人,使图更小)。不过,这仍然是双向搜索。
我还可以预先计算个人连接的人数,首先在节点中搜索“受欢迎”的人,因为他们最有可能连接到给定的目标个人。我意识到这将是可能的最短路径的速度权衡。我想我还想使用深度优先搜索,而不是我计划在其他情况下使用的广度优先搜索。
有人能想出一种更简单/更快的方法吗?我希望能够找到两个人之间的最短距离,所以这并不像总是有相同的终点那么容易(例如在凯文培根问题中)。
我意识到有一些问题,比如我可以得到 200 人的连锁店之类的,但这可以解决我对我愿意搜索的深度的限制。
sql - 查找必须搜索表多少次才能获得匹配的 Oracle 数据库
我在 oracle9i 的数据库中有这张表:
其中包含有关在电影 (fid) 中工作的演员 (aid) 的数据。
我想做的类似于计算 培根数
除了我的凯文培根以拥有 517635 的援助而闻名。
我不知道如何计算(仅使用 SQL 语句)我必须连接给定参与者(通过其他帮助)以找到与 517635 的连接的参与者数量。
查询的结果可能是给定演员必须连接到我的人的所有演员的列表,或者只是一个数字。
为此,我认为我必须首先获得与 517635 合作过的所有演员,而那些直接与他合作过的演员会得到 1。这张桌子不是太大,但足够大,可以让它变得不可行。
例如,假设布拉德皮特是我的 517635。他与安吉丽娜朱莉在《史密斯夫妇》中合作,这将使她成为第一名。如果布拉德皮特从未与布鲁斯威利斯合作过任何电影(假设是这样),但安吉丽娜朱莉与他合二为一,那么布鲁斯威利斯相对于布拉德皮特的人数将是 2。
在我的查询中,如果给定的数字是安吉丽娜的,结果将是:“布拉德皮特 1”或只是“1” 如果给定的数字是威利斯,结果将是:“安吉丽娜朱莉布拉德皮特 2”或“2”在表中:
我什么都没有,我对 SQL 完全陌生,我能想到的所有东西都会导致无限循环,其中有一个变量来计算循环数。关于从哪里开始以及幸运地结束的任何想法?
java - 培根游戏Java程序?
所以我正在为我的 java 类创建 Kevin Bacon 游戏。
这些是我必须使用的名称文件
演员:
关系:
这是我现在拥有的程序:
我的 getBaconNumber() 需要一些帮助,我需要程序来查找演员并计算最终到达凯文培根时的培根编号。
下面是教授对这个程序的要求: 1. 在你的 hashmap 中查找 actor 关系 2. 将当前关系打印到控制台 3. 使用关系中的第二个 actor 递归调用该方法(确保增加你的 bacon 编号)。
这种方法让我感到困惑,我无法完成它。
我需要它来打印这样的东西:
如果有人可以提供帮助,请我真的需要帮助吗
neo4j - 有效地寻找与凯文培根无关的演员
使用 neo4j 密码,什么查询可以有效地找到与 Kevin Bacon 无关的演员?为简单起见,我们可以说“未连接”意味着演员与 Kevin Bacon 的连接距离至少为 10 跳。
这是我尝试过的:
但是,此查询会运行 3 天。我怎样才能更有效地做到这一点?