用于在 C 中表示具有非连续整数节点的节点的图的有效数据结构

问题描述

我需要编写一个程序来进行图形着色,图形将以边列表的形式给出,例如 [(1,57),(57,45),(45,1)](注意即使图有 3 个节点,它们的名称也不一定是 1、2 和 3)。

我的第一个想法是使用邻接表,但问题是在构建图时,由于顶点不是 0 到 N,我不能只将连接到节点 n 的节点列表放在数组的第 n 个位置。也许我可以使用一个列表,将每个节点编号与其邻居列表相关联,但是我将无法在恒定时间内访问给定节点的相邻节点列表。

那我该怎么办?使用哈希表将节点与其邻居列表相关联是我最好的选择吗?或者我应该使用 BST 以便在 O(log V) 中找到与节点对应的邻居列表?欢迎任何想法...

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...