作者xcycl (XOO)
看板Programming
标题Re: [问题] 想请问一个graph的写法
时间Wed Jun 6 13:44:15 2007
我有个想法理论上是这样:
1. 先建立 K_n 的 spanning tree,挑选 edge 的方式用乱数选取,
2. 再乱数决定需要的边数,从 n(n+1)/2 ~ n-1 之间挑
3. 再乱数选取 K_n 上的边,直到满足 2. 所要求的。
这样至少能保证图形出来是 connected,而且边数是均匀分配。
不过是看你要乱在哪哩,如果是每个点的 degree 尽量不同,
那就不能这样弄了 :p
※ 引述《GORD (☆杨培安 完美世界☆)》之铭言:
: 我想请问一个graph的演算法
: 就是输入的部份...任意决定现在有几个点
: 然後会自动产生每一个点都可以走的到任意点的graph
: 例如:我输入 5,可能就会产生
: 3
: /
: 1—5—4
: \
: 2
: 资料型态可能就是
: NodeID 连接到的点
: 1 5
: 2 4
: 3 4
: 4 2,3,5
: 5 1,4
: 不晓得有什麽演算法可以用呢?
: 保证可以每一个点都能走到其他的点
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.246.209
1F:推 GORD:我的确是想每一点的degree尽量能乱一点 140.130.34.245 06/06 17:26
2F:→ GORD:不过我问题描述实在是太模糊 140.130.34.245 06/06 17:26
3F:→ GORD:自己也不知道有什麽较好的方式..Orz 140.130.34.245 06/06 17:28