Refresh

This website www.rubydoc.info/gems/algorithms/1.0.0/Containers/RubyRBTreeMap:delete is currently offline. Cloudflare\'s Always Online™ shows a snapshot of this web page from the Internet Archive\'s Wayback Machine. To check for the live version, click Refresh.

Method: Containers::RubyRBTreeMap#delete

Defined in:
lib/containers/rb_tree_map.rb

#delete(key) ⇒ Object

Deletes the item and key if it’s found, and returns the item. Returns nil if key is not present.

!!! Warning !!! There is a currently a bug in the delete method that occurs rarely but often enough, especially in large datasets. It is currently under investigation.

Complexity: O(log n)

map = Containers::TreeMap.new
map.push("MA", "Massachusetts")
map.push("GA", "Georgia")
map.min_key #=> "GA"


130
131
132
133
134
135
136
137
# File 'lib/containers/rb_tree_map.rb', line 130

def delete(key)
  result = nil
  if @root
    @root, result = delete_recursive(@root, key)
    @root.color = :black if @root
  end
  result
end