I cannot stress enough how important mathematical foundations is. It'll make everything else much easier to learn. I haven't read the book but heard good things about: https://www.amazon.com/Discrete-Mathematics-Applications-Sus... as a beginner text.
Coursera has multiple offerings on Data Structures / Algorithms -- find one that works best for you.
For instance:
https://www.coursera.org/learn/introduction-to-algorithms
https://www.coursera.org/specializations/algorithms
https://www.coursera.org/learn/algorithmic-thinking-1
https://www.coursera.org/learn/algorithmic-toolbox
By doing all of those you'll get a good introductory exposure to the topics.
You should also look at a rigorous course offering of Algorithms. MIT has a few online to view.
Some readings for a beginner are:
https://www.khanacademy.org/computing/computer-science/algor...
https://www.amazon.com/Algorithms-Unlocked-Press-Thomas-Corm...
https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press... (not beginner level but classic)
After all of this you should be fine with diving into interview books. You'll want to whiteboard solutions and be able to do all the difficult problems. Look into sites like leetcode, glassdoor and be able to do the difficult problems posted there.
I've spent a lot of time looking for valuable resources on Algorithms, Data Structures, and other CS theory concepts. CLRS was highly recommended but without a technical background, I wasn't able to dive in as quickly as I hoped. A few days ago, I purchased a copy of Algorithms Unlocked [1] which was described as a "prequel" to CLRS. This review in particular grabbed my attention: "The people who will get the most out of this book are self-taught programmers who have never taken a course in algorithms but who nevertheless need to know this material." Hopefully there isn't too much overrlap :)
BTW, the crytopgraphy & information theory units [2] also look promising.
[1] http://www.amazon.com/Algorithms-Unlocked-Thomas-H-Cormen/dp...
Free interactive Python textbook on Algorithms & Data Structures: http://interactivepython.org/courselib/static/pythonds/index...
Robert Sedgewick and Kevin Wayne of Princeton have a great textbook (code samples in basic Java): http://www.amazon.com/Algorithms-4th-Edition-Robert-Sedgewic...
They also teach a two-part Algorithms course on Coursera: https://www.coursera.org/courses?orderby=upcoming&search...
Thomas Cormen (the C in CLRS) also has a new book called Algorithms Unlocked which introduces some popular algorithms in pseudocode. http://www.amazon.com/Algorithms-Unlocked-Thomas-H-Cormen/dp...
Algorithms unlocked: https://www.amazon.com/Algorithms-Unlocked-Press-Thomas-Corm...
CLRS: https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press...
Both include the same author as the one in this article (Thomas Cormen).