Class: Algorithms::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.



303
304
305
306
307
308
309
310
# File 'lib/containers/heap.rb', line 303

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

Instance Attribute Details

#childObject

:nodoc:



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

def child
  @child
end

#degreeObject

:nodoc:



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

def degree
  @degree
end

#keyObject

:nodoc:



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

def key
  @key
end

#leftObject

:nodoc:



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

def left
  @left
end

#markedObject

:nodoc:



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

def marked
  @marked
end

#parentObject

:nodoc:



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

def parent
  @parent
end

#rightObject

:nodoc:



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

def right
  @right
end

#valueObject

:nodoc:



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

def value
  @value
end

Instance Method Details

#marked?Boolean

Returns:

  • (Boolean)


312
313
314
# File 'lib/containers/heap.rb', line 312

def marked?
  @marked == true
end