|
@@ -677,11 +677,6 @@ Then test it out on a computer to make sure it's not buggy from syntax.
|
|
- [ ] list strongly connected components
|
|
- [ ] list strongly connected components
|
|
- [ ] check for bipartite graph
|
|
- [ ] check for bipartite graph
|
|
|
|
|
|
-- For Curiosity:
|
|
|
|
- - [ ] Speeding up Dijkstra: https://www.youtube.com/watch?v=CHvQ3q_gJ7E
|
|
|
|
- - covers Fibonacci heap, a more complicated but more efficient heap than binary heap
|
|
|
|
- - [ ] Bellman-Ford: https://www.youtube.com/watch?v=ozsuci5pIso&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=17
|
|
|
|
-
|
|
|
|
You'll get more graph practice in Skiena's book (see Books section below) and the interview books
|
|
You'll get more graph practice in Skiena's book (see Books section below) and the interview books
|
|
|
|
|
|
## Even More Knowledge
|
|
## Even More Knowledge
|
|
@@ -767,12 +762,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|
- [ ] Coursera: Algorithms on Strings:
|
|
- [ ] Coursera: Algorithms on Strings:
|
|
- https://www.coursera.org/learn/algorithms-on-strings/home/week/1
|
|
- https://www.coursera.org/learn/algorithms-on-strings/home/week/1
|
|
|
|
|
|
-- [ ] **Scheduling**
|
|
|
|
- - in an OS, how it works
|
|
|
|
-
|
|
|
|
-- [ ] **Implement system routines**
|
|
|
|
- - not sure what is mean by this, like rewrite a file/stream handler?
|
|
|
|
-
|
|
|
|
- [ ] **Design patterns**
|
|
- [ ] **Design patterns**
|
|
- description:
|
|
- description:
|
|
- https://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Design-Patterns/135365-2.html
|
|
- https://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Design-Patterns/135365-2.html
|
|
@@ -787,9 +776,9 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|
- [ ] factory
|
|
- [ ] factory
|
|
|
|
|
|
- [ ] **Operating Systems (25 videos):**
|
|
- [ ] **Operating Systems (25 videos):**
|
|
- - https://www.youtube.com/watch?v=-KWd_eQYLwY&index=2&list=PL-XXv-cvA_iBDyz-ba4yDskqMDY6A1w_c
|
|
|
|
|
|
+ - Computer Science 162: https://www.youtube.com/watch?v=-KWd_eQYLwY&index=2&list=PL-XXv-cvA_iBDyz-ba4yDskqMDY6A1w_c
|
|
- https://www.quora.com/What-is-the-difference-between-a-process-and-a-thread
|
|
- https://www.quora.com/What-is-the-difference-between-a-process-and-a-thread
|
|
- Covers:
|
|
|
|
|
|
+ - Covers:
|
|
- Processes, Threads, Concurrency issues
|
|
- Processes, Threads, Concurrency issues
|
|
- difference between processes and threads
|
|
- difference between processes and threads
|
|
- processes
|
|
- processes
|
|
@@ -809,8 +798,11 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|
- Context switching
|
|
- Context switching
|
|
- How context switching is initiated by the operating system and underlying hardware
|
|
- How context switching is initiated by the operating system and underlying hardware
|
|
- [ ] threads in C++:
|
|
- [ ] threads in C++:
|
|
- https://www.youtube.com/playlist?list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M
|
|
|
|
|
|
+ - https://www.youtube.com/playlist?list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M
|
|
- stopped here: https://www.youtube.com/watch?v=_N0B5ua7oN8&list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M&index=4
|
|
- stopped here: https://www.youtube.com/watch?v=_N0B5ua7oN8&list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M&index=4
|
|
|
|
+ - [ ] concurrency in Python:
|
|
|
|
+ - https://www.youtube.com/watch?v=MCs5OvhV9S4
|
|
|
|
+ - https://www.youtube.com/watch?v=Obt-vMVdM8s
|
|
|
|
|
|
- [ ] **Data handling:**
|
|
- [ ] **Data handling:**
|
|
- see scalability options below
|
|
- see scalability options below
|
|
@@ -865,6 +857,13 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
|
|
- what is integration testing
|
|
- what is integration testing
|
|
- what is dependency injection
|
|
- what is dependency injection
|
|
|
|
|
|
|
|
+- [ ] **Scheduling**
|
|
|
|
+ - in an OS, how it works
|
|
|
|
+
|
|
|
|
+- [ ] **Implement system routines**
|
|
|
|
+ - understand what lies beneath the programming APIs you use
|
|
|
|
+ - can you implement them?
|
|
|
|
+
|
|
## Books
|
|
## Books
|
|
|
|
|
|
#### Mentioned in Google Coaching:
|
|
#### Mentioned in Google Coaching:
|
|
@@ -1136,6 +1135,9 @@ Some of mine (I already may know answer to but want their opinion or team perspe
|
|
- [ ] Synchronous Distributed Algorithms: Symmetry-Breaking. Shortest-Paths Spanning Trees: https://www.youtube.com/watch?v=mUBmcbbJNf4&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=27
|
|
- [ ] Synchronous Distributed Algorithms: Symmetry-Breaking. Shortest-Paths Spanning Trees: https://www.youtube.com/watch?v=mUBmcbbJNf4&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=27
|
|
- [ ] Asynchronous Distributed Algorithms: Shortest-Paths Spanning Trees: https://www.youtube.com/watch?v=kQ-UQAzcnzA&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=28
|
|
- [ ] Asynchronous Distributed Algorithms: Shortest-Paths Spanning Trees: https://www.youtube.com/watch?v=kQ-UQAzcnzA&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=28
|
|
|
|
|
|
|
|
+- [ ] Speeding up Dijkstra: https://www.youtube.com/watch?v=CHvQ3q_gJ7E
|
|
|
|
+ - covers Fibonacci heap, a more complicated but more efficient heap than binary heap
|
|
|
|
+- [ ] Bellman-Ford: https://www.youtube.com/watch?v=ozsuci5pIso&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=17
|
|
|
|
|
|
## Videos
|
|
## Videos
|
|
|
|
|