A Software Engineering Space

Merge Sort: A Fast, Stable, Tried and True O(nlogn) Algorithm

Merge Sort Everybody has their favorite algorithms, and Merge sort happens to be one of  mine. It’s the definitive “Divide and Conquer” Algorithm. There is a certain elegance to Merge sort, and unlike Quicksort, it is a stable sorting algorithm, meaning that when sorting records, the order of records with identical keys is preserved. The one downside […]

Left Leaning Red/Black Trees, Part 1: Theory, Rotations, Creation and Insertion.

Binary Search Trees Binary Search Trees are pervasive in computer science, their usefulness can not be overemphasized. From parsing, to searching, to sorting they pop up everywhere, even underpinning other ADT. They offer quick look up times and keep their data stored in sorted order with very little over head. They Are not without their […]