class Graphos::Weighted::Graph

Attributes

nodes[R]

Public Class Methods

new(size, edges=[]) click to toggle source
# File lib/graphos/weighted/graph.rb, line 12
def initialize size, edges=[]
  @nodes = (0..size-1).map{|i| Node.new i, edges[i] }
end

Public Instance Methods

[](i) click to toggle source
# File lib/graphos/weighted/graph.rb, line 29
def [] i
  @nodes[i]
end
add_edge(from, to, weight) click to toggle source
# File lib/graphos/weighted/graph.rb, line 20
def add_edge from, to, weight
  @nodes[from].add_edge(@nodes[to],weight)
  @nodes[to].add_edge(@nodes[from],weight)
end
each_node() { |n| ... } click to toggle source
# File lib/graphos/weighted/graph.rb, line 33
def each_node
  @nodes.each{|n| yield n}
end
edge(from, to) click to toggle source
# File lib/graphos/weighted/graph.rb, line 25
def edge from, to
  @nodes[from].edge(to)
end
size() click to toggle source
# File lib/graphos/weighted/graph.rb, line 16
def size
  @nodes.size
end