Min-Heap
A Min-Heap is a specialized tree-based data structure that satisfies the heap property, where the value of each node is less than or equal to the values of its children. This means that the smallest element is always at the root of the tree, making it efficient for priority queue operations. Min-Heaps are commonly implemented using arrays, where the parent-child relationships can be easily calculated using index positions.
Min-Heaps are useful in various algorithms, such as Dijkstra's algorithm for finding the shortest path in graphs and Heap Sort for efficient sorting. They allow for quick access to the minimum element and enable efficient insertion and deletion operations, typically in logarithmic time complexity.