2013-03-20 53 views
-1

通過在ruby中使用RGL庫,如何在圖形中查找子圖形的存在。我想知道ruby中的圖形中是否存在特定的子圖形

+0

你能給我圖的定義和子圖?它是怎樣的?它是什麼類型的圖表? – 2013-03-20 06:40:47

+0

例如,在一個DirectedGrpah {<1,2>,<1,3>,<3,4>,<3,5>,<4,6>,<6,5>,<5,7>,<7,8>,<8,9>,<9,7>},我需要檢查該曲線圖(曲線圖的一部分){<5,7>,<7,8>,<8,9>,<9,7>}本在上圖中...... – Guru 2013-03-20 07:27:17

+0

我已經給出了一個代碼,希望它有幫助:) – 2013-03-20 07:59:09

回答

0

你可以到這裏看看set

這裏是一個提示代碼:

p RUBY_VERSION 
require 'set' 


arr = [ [1,2], [1,3], [3,4], [3,5], [4,6], [6,5], [5,7],[7,8]] 
arr1 = [[1,3],[3,4]] 
arr2 = [[10,11],[4,5]] 
dirgraph = Set.new() 
subgraph = Set.new() 
subgraph1 = Set.new() 

arr.each{|x| 
dirgraph.add(x) 
} 

p dirgraph 

arr1.each{|x| 
subgraph.add(x) 
} 

p subgraph 

arr2.each{|x| 
subgraph1.add(x) 
} 

p subgraph1 

p subgraph.subset?(dirgraph) 
p subgraph1.subset?(dirgraph) 

輸出:

"2.0.0" 
#<Set: {[1, 2], [1, 3], [3, 4], [3, 5], [4, 6], [6, 5], [5, 7], [7, 8]}> 
#<Set: {[1, 3], [3,4]}> 
#<Set: {[10, 11], [4, 5]}> 
true 
false 
相關問題