#376 overall
Introduction to Algorithms
iTunes U
1 recommender · 1 thread · recommended in 1 year, 2011 · score 1.4
An introductory algorithms course, offered as recorded lectures on iTunes U (Stanford/MIT-style university lectures), covering core algorithm design and analysis. Commenters also point to a Coursera course with the same title, which is a separate offering.
Commenters describe it as free university lecture videos that work well as a step-by-step route into algorithms and data structures.
Algorithms & Data Structuresbeginnerfreevideo lectures#algorithms#data structures#lectures#itunes u#university course
Recommendations by year
20062026
There are some EXCELLENT and FREE lecture videos from Stanford, MIT, Berkley, and other universities available on iTunes U about Operating Systems, Algorithms, and Data Structures. Each sessions is about 1 to 2 hours. So if you do things step by step, it should be possible to watch 2 lectures per week, 1 course per 2 or 3 months.
Here are the links:
Operating Systems and System Programming: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcas...
Introduction to Algorithms: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcas...
Data Structures: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcas...
There are other series available on iTunes U as well, but don't worry, relax, do it step by step and then you might want to have a look at the rest of the series too.
Sounds to me like you're focusing on the wrong things or don't have the right resources for the task at hand. (that is, I don't think I've ever had to brush up on a proof for any algorithm or data structure when prepping for interviews)
Take it from someone who also had a shit background/education in math/CS and had to teach myself a lot of these things from scratch - it's doable, you just need time, and I guess the mindset that you can learn these things. See my comment history for some book recommendations. If you really feel like you need to learn things from scratch to give yourself the confidence of having a solid foundation, look at some of the intro computer science courses on Coursera. When I realized most of my uni's cs courses were... not great, I just ended up going through courses like Stanford's Introduction to Algorithms on Coursera and teaching myself.
I can also tell you as someone who was in Seattle for a while and had a bunch of friends at Amazon, I don't think anyone is going to think less of you, if anything, being able to survive at a place like Amazon seemed to be recognized as its own accomplishment...
edit: I'll also add (from personal experience), if it still feels like these things are difficult even once you feel like you have all the right resources, look into seeing medical professionals to make sure you're not being held back by anything, like sleep apnea, any cognitive disability (not sure if that's the right term...) etc
I recommend learning discrete mathematics, then data structures and algorithms.
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.