Class: ActiveBacon::A::Star::PriorityQueue

Inherits:
Object
  • Object
show all
Defined in:
lib/active_bacon/a/star.rb

Instance Method Summary collapse

Constructor Details

#initializePriorityQueue

Returns a new instance of PriorityQueue.



68
69
70
# File 'lib/active_bacon/a/star.rb', line 68

def initialize
  @list = []
end

Instance Method Details

#<<(pitem) ⇒ Object



77
78
79
# File 'lib/active_bacon/a/star.rb', line 77

def <<(pitem)
  add(*pitem)
end

#add(priority, item) ⇒ Object



72
73
74
75
# File 'lib/active_bacon/a/star.rb', line 72

def add(priority, item)
  @list << [priority, @list.length, item]
  @list.sort!
end

#empty?Boolean

Returns:

  • (Boolean)


85
86
87
# File 'lib/active_bacon/a/star.rb', line 85

def empty?
  @list.empty?
end

#nextObject



81
82
83
# File 'lib/active_bacon/a/star.rb', line 81

def next
  @list.shift[2]
end