Secret Caesar salad ? !? I am intrigued ! <| sep |> In my data structures class , we learned about LLs in a high level . We never wrote iterators for it , and used pointers in C instead . We always used whilelist . next ! null and never used generic container library functions . We did the same thing for trees , graphs , hash tables , etc . as well . It was mostly a theory based class , and we got to learn the inner workings of the data structures . Algorithms was similar , but with algorithms . Learning BFS , DFS and Dijkstra has helped me in interviews quite a bit since a lot of problems can be reduced to a graph problems . And of course , being taught complexity analysis was essential . The exams for both classes were problem solving , similar to how interviews are though maybe a bit detached . The skills definitely carry over though . In my algorithms class one of the exam questions was to write an algorithm to look for cycles in a graph , a question that pops up in interviews now and then . While the exams were pseudocode , the projects were all in C so we implemented most things by hand . I will have a hard time believing that someone who has gone through all that will not be able to do well on at least leetcode medium problems . That just means the person coasted through those classes without actually learning the content . Thanks to my algorithms class I can spot a max or min subarray problem from a mile away , and recognize patterns in most interview problems which gives me a starting point . So pay attention in class , and practice from CTCI , EPI and Leetcode mediumhard and you should be faring pretty well .