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 know a lot of people who work outside tech, and they actually kind of shudder when they hear about what happens in our field. Yes, interviews outside tech are stressful, and knowledge and experience will be probed, but the whole "here's a marker and a whiteboard, find all strings in this set that combine to form a substring of any other string in this set"? Yeah, that's unusual.
I think there are ways to have a programming career that don't involve this kind of thing, but you do limit your options.