Algorithms

Bitonic Sort in Go

In this post I will look into multi-core programming using Go. The language is good for concurrency, and handles multi-core parallel execution really well too. As a practical exercise Bitonic Sorter will be implemented. We will test the code on 8-core machine to see what benefit can parallelism provide.

Weighted Interval Scheduling

In this entry we will dive into the world of dynamic programming, by looking at one of the most simplest yet illustrative algorithmic problems, namely the problem of Interval Scheduling. We will start with special case of unweighted interval scheduling, and then elaborate from there into a more general case of weighted intervals.