Thanks to roadmap.sh and Kamran Ahmed for providing this and more amazing roadmaps. You can access the complete roadmap at the link: 🔗 Computer Science
I decided to use C to study most of the concepts in this roadmap, if a need a OOP language, I will use C++. I was convinced by the information contained in the roadmap:
My personal recommendation would be to pick C++ or C and the reason for that is: They allow you to deal with pointers and memory allocation/deallocation, so you feel the data structures and algorithms in your bones. In higher level languages like Python or Java, these are hidden from you. In day to day work, that's terrific, but when you're learning how these low-level data structures are built, it's great to feel close to the metal.
Learn C Programming with Dr. Chuck - feat. classic book by Kernighan and Ritchie