simple algorithms, data structures and other misc practice code