21得票4回答
图 - 如果我用哈希表替换邻接表中的每个链表,会有什么缺点?

在 CLRS 练习 22.1-8 中(我是自学而非在任何大学学习),假设每个数组入口 Adj[u] 是一个哈希表,其中包含 (u, v) ∈ E 的顶点 v。如果所有边查找的可能性相等,那么确定边是否在图中的预期时间是多少?这种方案有什么缺点?为每个边列表建议一种替代数据结构来解决这些问题。与...

11得票1回答
图的表示法:邻接表与矩阵

我正在为编码面试做准备,并在复习图形知识。我想知道以下内容:在我所见的所有地方中,都认为邻接表比邻接矩阵更适用于大型稀疏图形,因此在这种情况下应该优先使用邻接表。此外,从节点计算出度需要O(N)的矩阵,而在列表中仅需O(1),对于相邻节点,列表只需要O(num adjacent nodes),...

21得票2回答
如何使用PHP和MySQL将父子关系(邻接表)转换为嵌套集?

我花了几个小时在网上寻找解决这个问题的方法。我找到了很多关于如何将嵌套集转换为相邻集的例子...但很少有反向的例子。我找到的例子要么不起作用,要么使用MySQL程序。不幸的是,我不能在这个项目中使用程序。我需要一个纯PHP的解决方案。 我有一个使用下面邻接模型的表: id ...

9得票4回答
将邻接列表层次结构展平为所有路径的列表

我有一个使用邻接列表模型存储分层信息的表格。该表格使用自引用键(如下所示的示例)。这个表格看起来可能很熟悉: 链接 category_id name parent ----------- -------------------- ----------- 1 ...

14得票4回答
如何从边列表创建加权邻接表/矩阵?

我的问题很简单:我需要从边的列表中创建一个邻接表/矩阵。 我在csv文件中存储了一个边列表,其中column1 = node1,column2 = node2,并且我想将其转换为加权邻接表或加权邻接矩阵。 更具体地说,数据的形式如下 - 数字仅是节点ID:node1,node2 551,5...

12得票5回答
在C++中为有向图制作邻接表

大家好 :) 今天我正在提升自己的图论和数据结构技能。因为已经有一段时间没有用C++工作了,所以我决定用C++做一个小项目。 我想要制作一个有向图的邻接表,换句话说就是像这样的东西:0-->1-->3 1-->2 2-->4 3--> 4--> 这将是一个...

7得票1回答
使用查询变量的SELECT语句未使用索引

我在玩(出于兴趣)使用本地变量的递归查询检索简单邻接列表中节点树。目前我拥有的解决方案很有趣,但我想知道(这是我的唯一问题),为什么MySQL拒绝使用任何INDEX来优化此查询。 MySQL不应该能够使用INDEX查找最近的子项吗?我很好奇MySQL为什么不这样做。即使我使用FORCE IND...

10得票1回答
DynamoDB邻接表是否应使用离散分区键来模拟每种类型的关系?

背景 我正在构建一个论坛,并研究使用DynamoDB和邻接列表对数据进行建模。一些顶级实体(比如用户)可能会与其他顶级实体(比如评论)拥有多种关系。 需求 例如,假设我们想要能够执行以下操作: 用户可以点赞评论 用户可以关注评论 评论可以显示喜欢它的用户 评论可以显示关注它的用户 用...

13得票3回答
Python中的邻接表和邻接矩阵

你好,我理解邻接表和邻接矩阵的概念,但我不清楚如何在Python中实现它们: 想要实现以下两个示例的算法,但并不知道初始输入,因为这些示例在代码中硬编码了输入: 对于邻接表: a, b, c, d, e, f, g, h = range(8) N = [ {b:...

8得票2回答
我应该使用哪种层次模型?邻接、嵌套还是枚举?

我有一张表格,其中包含世界上所有地理位置及其关系的位置。 以下是一个示例,显示了层次结构。您将看到数据实际上存储为三个: 枚举路径 邻接列表 嵌套集 显然,数据永远不会改变。下面是英格兰布莱顿位置(woeid为13911)的直接祖先示例。 表格:geoplanet_places(有...