Class: Containers::Heap::Node

Inherits:
Object
  • Object
show all
Defined in:
lib/containers/heap.rb

Overview

Node class used internally

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(key, value) ⇒ Node

Returns a new instance of Node.



292
293
294
295
296
297
298
299
# File 'lib/containers/heap.rb', line 292

def initialize(key, value)
  @key = key
  @value = value
  @degree = 0
  @marked = false
  @right = self
  @left = self
end

Instance Attribute Details

#childObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def child
  @child
end

#degreeObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def degree
  @degree
end

#keyObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def key
  @key
end

#leftObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def left
  @left
end

#markedObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def marked
  @marked
end

#parentObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def parent
  @parent
end

#rightObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def right
  @right
end

#valueObject

:nodoc:



290
291
292
# File 'lib/containers/heap.rb', line 290

def value
  @value
end

Instance Method Details

#marked?Boolean

Returns:

  • (Boolean)


301
302
303
# File 'lib/containers/heap.rb', line 301

def marked?
  @marked == true
end