├── README.md └── slides_with_notes ├── Lecture_02-_Array_and_liked_list.pdf ├── Lecture_03-1-Stack.pdf ├── Lecture_03-2-Queue.pdf ├── Lecture_04-Algorithm_Analysis.pdf ├── Lecture_05-Hash_table.pdf ├── Lecture_06-Insertion_and_Bubble_Sort.pdf ├── Lecture_07-Merge_Sort.pdf ├── Lecture_08-Quick_Sort.pdf ├── Lecture_09-Divide_and_Conquer.pdf ├── Lecture_10-Trees_Basic_traversal.pdf ├── Lecture_11-Binary_Trees.pdf ├── Lecture_12-Heaps.pdf ├── Lecture_13.1-Huffman_Coding.pdf ├── Lecture_13.2-Binary_Search_Trees.pdf ├── Lecture_14-AVL_Trees.pdf ├── Lecture_15.1_Red-Black_Trees.pdf ├── Lecture_15.2-Disjoint_Sets.pdf ├── Lecture_16-Graphs.pdf ├── Lecture_17.1-Graph_Traversal.pdf ├── Lecture_17.2-Minimum_Spanning_Tree.pdf ├── Lecture_19-Greedy_Algorithm.pdf ├── Lecture_20-Topological_Sort.pdf ├── Lecture_21-Shortest_PathDijkstras_and_Bellman-For.pdf ├── Lecture_22-Shortest_PathA__search_and_Backtrackin.pdf ├── Lecture_23-Shortest_PathFloyd-Warshall.pdf ├── Lecture_24-25-Dynamic_Programming.pdf ├── Lecture_26-28-Reductions_P_and_NP.pdf ├── NP NPC NPD defs.pdf └── npcomplete.pdf /README.md: -------------------------------------------------------------------------------- 1 | # CS101_Algorithm-Data_Structures 2 | Shanghaitech CS101 Algorithm and Data Structures 3 | ***** 4 | All my slides with notes are included in this repository. 5 | They have been modified and added additional details for understanding. 6 | May be useful when learning this course. Good luck and enjoy the journey! 7 | ## Topics Covered 8 | 9 | ### Basics 10 | Array 11 | Liked_list 12 | Stack 13 | Queue 14 | Complexity_Analysis 15 | Hash_table 16 | 17 | ### Sorting 18 | Insertion_and_Bubble_Sort 19 | Merge_Sort 20 | Quick_Sort 21 | Topological_Sort 22 | 23 | ### Divide_and_Conquer 24 | 25 | ### Trees 26 | Trees_Basics,BFS/DFS 27 | Binary_Trees 28 | Heaps 29 | Huffman_Coding 30 | Binary_Search_Trees 31 | AVL_Trees 32 | Red-Black_Trees 33 | 34 | ### Graphs 35 | Disjoint_Sets 36 | Graph_Basics 37 | Graph_Traversal 38 | Topological_Sort 39 | Minimum_Spanning_Tree 40 | Prim's 41 | Kruskal 42 | Dijkstras 43 | Bellman-Ford 44 | Astar_search_with_Backtrackin 45 | Floyd-Warshall 46 | 47 | ### Greedy_Algorithm 48 | 49 | ### Dynamic_Programming 50 | 51 | ### Analysis 52 | Reductions_P_and_NP 53 | NP NPC NPD 54 | -------------------------------------------------------------------------------- /slides_with_notes/Lecture_02-_Array_and_liked_list.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_02-_Array_and_liked_list.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_03-1-Stack.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_03-1-Stack.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_03-2-Queue.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_03-2-Queue.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_04-Algorithm_Analysis.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_04-Algorithm_Analysis.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_05-Hash_table.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_05-Hash_table.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_06-Insertion_and_Bubble_Sort.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_06-Insertion_and_Bubble_Sort.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_07-Merge_Sort.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_07-Merge_Sort.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_08-Quick_Sort.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_08-Quick_Sort.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_09-Divide_and_Conquer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_09-Divide_and_Conquer.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_10-Trees_Basic_traversal.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_10-Trees_Basic_traversal.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_11-Binary_Trees.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_11-Binary_Trees.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_12-Heaps.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_12-Heaps.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_13.1-Huffman_Coding.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_13.1-Huffman_Coding.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_13.2-Binary_Search_Trees.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_13.2-Binary_Search_Trees.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_14-AVL_Trees.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_14-AVL_Trees.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_15.1_Red-Black_Trees.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_15.1_Red-Black_Trees.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_15.2-Disjoint_Sets.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_15.2-Disjoint_Sets.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_16-Graphs.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_16-Graphs.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_17.1-Graph_Traversal.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_17.1-Graph_Traversal.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_17.2-Minimum_Spanning_Tree.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_17.2-Minimum_Spanning_Tree.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_19-Greedy_Algorithm.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_19-Greedy_Algorithm.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_20-Topological_Sort.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_20-Topological_Sort.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_21-Shortest_PathDijkstras_and_Bellman-For.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_21-Shortest_PathDijkstras_and_Bellman-For.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_22-Shortest_PathA__search_and_Backtrackin.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_22-Shortest_PathA__search_and_Backtrackin.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_23-Shortest_PathFloyd-Warshall.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_23-Shortest_PathFloyd-Warshall.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_24-25-Dynamic_Programming.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_24-25-Dynamic_Programming.pdf -------------------------------------------------------------------------------- /slides_with_notes/Lecture_26-28-Reductions_P_and_NP.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/Lecture_26-28-Reductions_P_and_NP.pdf -------------------------------------------------------------------------------- /slides_with_notes/NP NPC NPD defs.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/NP NPC NPD defs.pdf -------------------------------------------------------------------------------- /slides_with_notes/npcomplete.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Crepdo/CS101_Algorithm-Data_Structures/53316313042b64eaa295dd937014d6b31a849972/slides_with_notes/npcomplete.pdf --------------------------------------------------------------------------------