标题:【BGL】print_vertices的第二个参数
只看楼主
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
结帖率:96.08%
已结贴  问题点数:20 回复次数:3 
【BGL】print_vertices的第二个参数
我是想写一个算法,要处理的图的结点以及边的信息之前是未知的,传入的参数只有从文件读入的邻接矩阵信息。

自己找的例子里面一般都是定义一个枚举量,那样的话结点的数目就被限定死了,不是我想要的效果的。

于是打算通过1、2、3……这样的方式给结点编号,而非事先在代码里枚举一些A、B、C……之类的。

我的问题是:

print_vertices的第二个参数是一个字符串,如果我安装123的方式编号,传入的参数势必是“123456789101112……”,

该如何知道我的编号是10这个数字而非分别对两个结点编号为1和0?

这个函数是把字符串里的一个字符当做一个编号进行处理的,显然去改造BGL里的这个函数是不太现实的,我该怎么传参或者怎么使用这个函数才能实现我想要的结果呢?

PS:函数位置如下#include<boost\graph\graph_utility.hpp>

搜索更多相关主题的帖子: 字符串 如何 信息 
2013-12-18 22:32
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6809
专家分:42393
注 册:2010-12-16
得分:5 
传入时候,用个分隔符分开把,比如
12345表示1 、2、3、4、5时候用1#2#3#4#5.
或者约定长度,比如用固定4(根据你需要定这个值)位数,比如12345表示1、2、3、4、5 用00010002000300040005

方法是很多的,只是总的有个约定,不然,神也不知道

我行我乐
我的博客:
http://blog.yuccn. net
2013-12-19 08:25
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:15 
没用过boost,我Google了一下,似乎print_vertices的第二个参数除了传字符串,还可以传其它类型,比如 property_map<Graph, vertex_id_t>::type

ref:http://www.
2013-12-19 08:35
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
得分:0 
我也是初次接触

我想我得再学习一下

回头再对二位的回答做评论~

先谢过~


学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2013-12-21 21:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-425379-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.311228 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved