diff --git a/heaps/README.md b/heaps/README.md index 206428e..63106d7 100644 --- a/heaps/README.md +++ b/heaps/README.md @@ -12,12 +12,11 @@ * heap is a data structure capable of giving you the smallest (or the largest) element in constant time, while adding or removing the smallest (or the largest) element in logarithmic time. -* heaps guarantees both insertion and deletion to have time complexity `O(log N)` (while maintaining get_max/get_min at `O(1)`). - -* a heap is a binary tree with these properties: +* a heap is like a binary tree with these properties: * it must have all of **its nodes in a specific order**, and * its shape must be **complete** (all the levels of the tree must be completely filled except maybe for the last one and the last level must have the left-most nodes filled, always). - * a max heap's **root node must** have all its children either **greater than or equal** to its children. a min heap is the opposite. duplicate values are allowed. + * a max heap's **root node must** have all its children either **greater than or equal** to its children. + * a min heap is the opposite. duplicate values are allowed. * heaps can be represented with linked lists, queues (arrays), or binary trees. @@ -251,7 +250,7 @@ class MinHeap: * insert the element at the bottom, at the leftmost node. * then compare the node to each parent, exchanging them until the tree's properties are correct. -* `extreact_max`: +* `extract_max`: * remove/return the top and then replace the tree's top with its bottom rightmost element. * swap up until the max element is on the top. @@ -409,7 +408,7 @@ def compare_two_tops(array) -> int:
-* given an array of `intervals[i] = [start_i, end_i]`, return the minimum the non-overlapping intervals +* given an array of `intervals[i] = [start_i, end_i]`, return the minimum the non-overlapping intervals: