I am a fresh software engineering graduate and I am looking for something to improve my problem solving skills, while I did learn about basic algorithms and data structures, I feel like I could learn further more, I know about big O, fast sorting algorithms, dynamic programming, backtracking, binary trees (Although I do not think I know everything about them), I also know about low level memory concepts.
I am sure I forgot to mention some of the stuff I also know about, but I hope the ones I mentioned give a good insights on where I should move onto next.
Ignore the name (neural networks might as well be a footnote). A more appropriate title would be “generic problems and algorithms”.
(Artificial Intelligence: A modern approach by Russell and Norvig)
https://github.com/Youquan1/Artificial-intelligence-books/blob/master/Artificial Intelligence A Modern Approach - Stuart J. Russell %2C Peter Norvig.pdf