data structures algorithms internship