Class: DSA::LinkedList::DoublyNode

Inherits:
Object
  • Object
show all
Defined in:
lib/dsa-ruby/linked_list.rb

Overview

Node for a doubly linked list.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(val = 0, nxt = nil, prev = nil) ⇒ DoublyNode

Initialize a new doubly linked list node.

Parameters:

  • val (Object) (defaults to: 0)

    the value to store

  • nxt (DoublyNode, nil) (defaults to: nil)

    the next node (default: nil)

  • prev (DoublyNode, nil) (defaults to: nil)

    the previous node (default: nil)



41
42
43
44
45
# File 'lib/dsa-ruby/linked_list.rb', line 41

def initialize(val = 0, nxt = nil, prev = nil)
  @val = val
  @next = nxt
  @prev = prev
end

Instance Attribute Details

#nextDoublyNode?

Returns the next node in the list.

Returns:



33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/dsa-ruby/linked_list.rb', line 33

class DoublyNode
  attr_accessor :val, :next, :prev

  # Initialize a new doubly linked list node.
  #
  # @param val [Object] the value to store
  # @param nxt [DoublyNode, nil] the next node (default: nil)
  # @param prev [DoublyNode, nil] the previous node (default: nil)
  def initialize(val = 0, nxt = nil, prev = nil)
    @val = val
    @next = nxt
    @prev = prev
  end
end

#prevDoublyNode?

Returns the previous node in the list.

Returns:

  • (DoublyNode, nil)

    the previous node in the list



33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/dsa-ruby/linked_list.rb', line 33

class DoublyNode
  attr_accessor :val, :next, :prev

  # Initialize a new doubly linked list node.
  #
  # @param val [Object] the value to store
  # @param nxt [DoublyNode, nil] the next node (default: nil)
  # @param prev [DoublyNode, nil] the previous node (default: nil)
  def initialize(val = 0, nxt = nil, prev = nil)
    @val = val
    @next = nxt
    @prev = prev
  end
end

#valObject

Returns the value stored in the node.

Returns:

  • (Object)

    the value stored in the node



33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/dsa-ruby/linked_list.rb', line 33

class DoublyNode
  attr_accessor :val, :next, :prev

  # Initialize a new doubly linked list node.
  #
  # @param val [Object] the value to store
  # @param nxt [DoublyNode, nil] the next node (default: nil)
  # @param prev [DoublyNode, nil] the previous node (default: nil)
  def initialize(val = 0, nxt = nil, prev = nil)
    @val = val
    @next = nxt
    @prev = prev
  end
end