Data Structures and Algorithms in Java and Javascript