【发布时间】:2012-03-28 00:59:32
【问题描述】:
我只是想知道如何使用邻接矩阵来解决图问题。
例如,对于我的程序,我有两个项目的汇率。
构建有向图的输入:6 件衬衫 15 件袜子 构建有向图的输入:2 袜子 1 内衣
有向图:
衬衫--(6/15)-- 袜子--(2/1)-- 内衣
所以从衬衫到袜子的边是 6,从袜子到衬衫的边是 15,袜子到内衣是 2,内衣到袜子是 1。
要比较的输入:袜子衬衫 解决方案:15 袜子 6 衬衫
要比较的输入:衬衫内衣 解决方案:12 件衬衫 15 件内衣
我的问题是我怎样才能用邻接矩阵来表示它并能够获得它的权重来解决问题。
我正在考虑为上述问题使用一个看起来像这样的邻接矩阵。
shirts socks underwear
shirts [ 0 6 0 ]
socks [ 15 0 2 ]
underwear [ 0 1 0 ]
这是一个好的开始吗?我试图在代码之前获取逻辑。
只是在寻找更多关于如何在更大范围内使用更多项目和单独图表来执行此操作的信息。
【问题讨论】:
-
我可能误解了手头的问题,但我在这里没有看到图表。你的顶点是什么?袜子和衬衫?你的优势是什么?您想对这些应用哪种图形算法?
-
@amit:我认为 OP 希望将其视为一个二分图,其中一种颜色的顶点为衬衫,一种颜色为袜子。
-
@amit 说了什么。您要构建什么样的图表?老实说,我什至看不出你目前正在解决什么问题。您可能需要一个更清晰的示例来说明您要解决的问题以及如何使用邻接矩阵。
-
是的,我的顶点是袜子和衬衫,边缘是从衬衫到袜子的 6/15,或者从袜子到衬衫的 15/6。我真的不知道任何图形算法,所以我试图找出最简单的方法。
标签: c++ graph adjacency-matrix