I really wonder if it's important to learn all that low-level stuff at this point. Most programmers today will never write a binary tree or a hash table. Modern high-performance ones are generic components you get from libraries. Even MIT gave up on teaching from Structure and Interpretation of Computer Programs.
I got all that stuff. I've wired up a 4-bit adder on a solderless breadboard for an architecture class. I used to have a well-thumbed copy of Knuth handy. I've designed and built a switching power supply. But I'm not up to date on using Claude Code, and should be.