Skip to content

Commit eed0ab4

Browse files
Update README.md
1 parent b91ce29 commit eed0ab4

File tree

1 file changed

+73
-68
lines changed

1 file changed

+73
-68
lines changed

README.md

Lines changed: 73 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -468,6 +468,10 @@ Overview video:
468468

469469
### Session 1 - Basic Algorithms examples
470470

471+
472+
Todo: 1) organize this section, clean up unecessary stuff, and maybe add more stuff
473+
2) write my talk
474+
471475
Talk points: Here we will see the importance of algorithms in designing efficient applications, and how we can benefit from using the advantages of efficient data structures and algorithms together to create very powerful systems.
472476

473477

@@ -503,6 +507,11 @@ Talk points: Here we will see the importance of algorithms in designing efficien
503507
- [ ] [4. System Sorts](https://www.youtube.com/watch?v=rejpZ2htBjE&index=4&list=PLe-ggMe31CTeE3x2-nF1-toca1QpuXwE1)
504508

505509
### Session 2 - Recursion
510+
511+
512+
513+
Todo: 1) organize this section, clean up unecessary stuff, and maybe add more stuff
514+
2) write my talk
506515
note: transition by showing how sorting can use recursion, also binary search
507516
fibonacci, etc.
508517

@@ -516,6 +525,16 @@ fibonacci, etc.
516525
- https://www.coursera.org/learn/principles-of-computing-2/lecture/CZqfQ/reading-files
517526

518527

528+
### Divide and Conquer:
529+
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/GFmmJ/o-n-log-n-algorithm-for-counting-inversions-i
530+
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/IUiUk/o-n-log-n-algorithm-for-counting-inversions-ii
531+
532+
### Sorting
533+
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/Zt0Ti/quicksort-overview
534+
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/xUd8B/partitioning-around-a-pivot
535+
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/KMyzr/correctness-of-quicksort-review-optional
536+
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/QCLVL/choosing-a-good-pivot
537+
519538

520539
# Week 4
521540
TODO: organize this section, write to connect the subjects to algorithms
@@ -739,75 +758,7 @@ TODO: organize this section, write to connect the subjects to algorithms
739758
- [How To Count A Billion Distinct Objects Using Only 1.5KB Of Memory](http://highscalability.com/blog/2012/4/5/big-data-counting-how-to-count-a-billion-distinct-objects-us.html)
740759

741760

742-
743-
744761
# Week 5
745-
Todo: 1) organize this section, clean up unecessary stuff, and maybe add more stuff
746-
2) write my talk
747-
748-
## Session 1 - Divide and Conquer & Sorting
749-
750-
Todo: 1) organize this section, clean up unecessary stuff, and maybe add more stuff
751-
2) write my talk
752-
753-
### Divide and Conquer:
754-
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/GFmmJ/o-n-log-n-algorithm-for-counting-inversions-i
755-
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/IUiUk/o-n-log-n-algorithm-for-counting-inversions-ii
756-
757-
### Sorting
758-
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/Zt0Ti/quicksort-overview
759-
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/xUd8B/partitioning-around-a-pivot
760-
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/KMyzr/correctness-of-quicksort-review-optional
761-
- https://www.coursera.org/learn/algorithms-divide-conquer/lecture/QCLVL/choosing-a-good-pivot
762-
763-
## Session 2 - Graph Search, Shortest Paths, and Data Structures
764-
765-
Todo: 1) organize this section, clean up unecessary stuff, and maybe add more stuff
766-
2) write my talk
767-
768-
### Graphs
769-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/NX0BI/graph-search-overview
770-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/JZRXz/breadth-first-search-bfs-the-basics
771-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/ZAaJA/bfs-and-shortest-paths
772-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/BTVWn/bfs-and-undirected-connectivity
773-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/pKr0Y/depth-first-search-dfs-the-basics
774-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/yeKm7/topological-sort
775-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/rng2S/computing-strong-components-the-algorithm
776-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/f11at/structure-of-the-web-optional
777-
778-
### Dijkstra Graph Search Algorihtm
779-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/rxrPa/dijkstras-shortest-path-algorithm
780-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/Jfvmn/dijkstras-algorithm-examples
781-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/VCHYw/correctness-of-dijkstras-algorithm
782-
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/Pbpp9/dijkstras-algorithm-implementation-and-running-time
783-
784-
More:
785-
786-
787-
Graphs are a huge subject in computer science, there are many applications in which they are powerful. From modeling the relationships between people in social networks, to representing connections of genomic data in trying to understand patterns of diseases, they are very useful. There are many ways to represent them and we will understand them below:
788-
789-
790-
- [ ] **Union-Find**
791-
- [ ] [Overview](https://www.coursera.org/learn/data-structures/lecture/JssSY/overview)
792-
- [ ] [Naive Implementation](https://www.coursera.org/learn/data-structures/lecture/EM5D0/naive-implementations)
793-
- [ ] [Trees](https://www.coursera.org/learn/data-structures/lecture/Mxu0w/trees)
794-
- [ ] [Union By Rank](https://www.coursera.org/learn/data-structures/lecture/qb4c2/union-by-rank)
795-
- [ ] [Path Compression](https://www.coursera.org/learn/data-structures/lecture/Q9CVI/path-compression)
796-
- [ ] [Analysis Options](https://www.coursera.org/learn/data-structures/lecture/GQQLN/analysis-optional)
797-
798-
799-
- [ ] **Advanced Graph Processing** (videos)
800-
- [ ] [Synchronous Distributed Algorithms: Symmetry-Breaking. Shortest-Paths Spanning Trees](https://www.youtube.com/watch?v=mUBmcbbJNf4&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=27)
801-
- [ ] [Asynchronous Distributed Algorithms: Shortest-Paths Spanning Trees](https://www.youtube.com/watch?v=kQ-UQAzcnzA&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=28)
802-
803-
804-
805-
- use resources from here https://www.coursera.org/learn/algorithms-on-graphs (edit necessary)
806-
https://www.coursera.org/learn/algorithms-graphs-data-structures
807-
808-
809-
810-
# Week 6
811762

812763
## Session 1 - Heaps and Balanced Trees
813764

@@ -1051,6 +1002,60 @@ More:
10511002
- [ ] [6.046: Dynamic Programming: All-Pairs Shortest Paths](https://www.youtube.com/watch?v=NzgFUwOaoIw&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=15)
10521003
- [ ] [6.046: Dynamic Programming (student recitation)](https://www.youtube.com/watch?v=krZI60lKPek&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=12)
10531004

1005+
1006+
# Week 5
1007+
Todo: 1) organize this section, clean up unecessary stuff, and maybe add more stuff
1008+
2) write my talk
1009+
1010+
1011+
## Session 1 & 2 - Graph Search, Shortest Paths, and Data Structures
1012+
1013+
Todo: 1) organize this section, clean up unecessary stuff, and maybe add more stuff
1014+
2) write my talk
1015+
1016+
### Graphs
1017+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/NX0BI/graph-search-overview
1018+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/JZRXz/breadth-first-search-bfs-the-basics
1019+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/ZAaJA/bfs-and-shortest-paths
1020+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/BTVWn/bfs-and-undirected-connectivity
1021+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/pKr0Y/depth-first-search-dfs-the-basics
1022+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/yeKm7/topological-sort
1023+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/rng2S/computing-strong-components-the-algorithm
1024+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/f11at/structure-of-the-web-optional
1025+
1026+
### Dijkstra Graph Search Algorihtm
1027+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/rxrPa/dijkstras-shortest-path-algorithm
1028+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/Jfvmn/dijkstras-algorithm-examples
1029+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/VCHYw/correctness-of-dijkstras-algorithm
1030+
- https://www.coursera.org/learn/algorithms-graphs-data-structures/lecture/Pbpp9/dijkstras-algorithm-implementation-and-running-time
1031+
1032+
More:
1033+
1034+
1035+
Graphs are a huge subject in computer science, there are many applications in which they are powerful. From modeling the relationships between people in social networks, to representing connections of genomic data in trying to understand patterns of diseases, they are very useful. There are many ways to represent them and we will understand them below:
1036+
1037+
1038+
- [ ] **Union-Find**
1039+
- [ ] [Overview](https://www.coursera.org/learn/data-structures/lecture/JssSY/overview)
1040+
- [ ] [Naive Implementation](https://www.coursera.org/learn/data-structures/lecture/EM5D0/naive-implementations)
1041+
- [ ] [Trees](https://www.coursera.org/learn/data-structures/lecture/Mxu0w/trees)
1042+
- [ ] [Union By Rank](https://www.coursera.org/learn/data-structures/lecture/qb4c2/union-by-rank)
1043+
- [ ] [Path Compression](https://www.coursera.org/learn/data-structures/lecture/Q9CVI/path-compression)
1044+
- [ ] [Analysis Options](https://www.coursera.org/learn/data-structures/lecture/GQQLN/analysis-optional)
1045+
1046+
1047+
- [ ] **Advanced Graph Processing** (videos)
1048+
- [ ] [Synchronous Distributed Algorithms: Symmetry-Breaking. Shortest-Paths Spanning Trees](https://www.youtube.com/watch?v=mUBmcbbJNf4&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=27)
1049+
- [ ] [Asynchronous Distributed Algorithms: Shortest-Paths Spanning Trees](https://www.youtube.com/watch?v=kQ-UQAzcnzA&list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp&index=28)
1050+
1051+
1052+
1053+
- use resources from here https://www.coursera.org/learn/algorithms-on-graphs (edit necessary)
1054+
https://www.coursera.org/learn/algorithms-graphs-data-structures
1055+
1056+
1057+
1058+
10541059
# Week 7
10551060

10561061
## Session 1 - Knapsack problem and More Dynamic Programming

0 commit comments

Comments
 (0)