Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Data Structures & Algorithms !, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:07:09
    S01 - L01 -- Course Breakdown
  • Урок 2. 00:04:37
    S01 - L02 -- What is DS and Algo
  • Урок 3. 00:03:28
    S01 - L03 -- Why companies ask DS
  • Урок 4. 00:03:30
    S01 - L04 -- DS in every day life
  • Урок 5. 00:03:42
    S01 - L05 -- Types of DS
  • Урок 6. 00:11:59
    S01.1-L01--What is Recursion
  • Урок 7. 00:05:07
    S01.1-L02--Why learn Recursion
  • Урок 8. 00:04:09
    S01.1-L03--Format of Recursion Method
  • Урок 9. 00:14:41
    S01.1-L04--How Recurssion works internally
  • Урок 10. 00:08:22
    S01.1-L05--Finding Factorial using Recursion
  • Урок 11. 00:07:42
    S01.1-L06--Finding Fibonacci using Recursion
  • Урок 12. 00:03:19
    S01.1-L07--Recursion vs Iteration
  • Урок 13. 00:04:43
    S01.1-L08--When to Use & Avoid Recursion
  • Урок 14. 00:03:16
    S01.1-L09--Practical Uses of Recursion
  • Урок 15. 00:03:14
    S02-L01 -- What is Algo Run Time Analysis
  • Урок 16. 00:10:39
    S02-L02 -- What are Notations
  • Урок 17. 00:07:55
    S02-L03 -- Examples of Notations
  • Урок 18. 00:06:52
    S02-L04 -- Examples of Time Complexity
  • Урок 19. 00:08:14
    S02-L05 -- Finding Time Complexity of Iterative Algo
  • Урок 20. 00:11:10
    S02-L06 -- Finding Time Complexity of Recursive Algo#1
  • Урок 21. 00:17:48
    S02-L07 -- Finding Time Complexity of Recursive Algo#2
  • Урок 22. 00:07:02
    S03 - L01 -- What and Why of Array
  • Урок 23. 00:07:18
    S03 - L02 -- Types of Array
  • Урок 24. 00:06:01
    S03 - L03 -- How is Array represented in Memory
  • Урок 25. 00:11:26
    S03 - L04 -- Create an Array
  • Урок 26. 00:07:05
    S03 - L05 -- Insert Traverse in 1D Array
  • Урок 27. 00:16:27
    S03 - L06 -- Access Search Delete in 1D Array
  • Урок 28. 00:13:45
    S03 - L07 -- Code 1D Array
  • Урок 29. 00:04:02
    S03 - L08 -- Time Complexity of 1D Array
  • Урок 30. 00:09:14
    S03 - L09 -- Create 2D Array
  • Урок 31. 00:14:49
    S03 - L10 -- 2D Array operations
  • Урок 32. 00:02:56
    S03 - L11 -- Time Complexity of 2D Array
  • Урок 33. 00:06:17
    S03 - L12 -- When to use Array
  • Урок 34. 00:14:33
    S03 - L13 -- Code 2D Array
  • Урок 35. 00:07:31
    S03 - L14 -- Practical uses of Array
  • Урок 36. 00:08:44
    S04 - L01 -- What is linked list
  • Урок 37. 00:03:19
    S04 - L02 -- Linked list vs Array
  • Урок 38. 00:06:30
    S04 - L03 -- Components of LinkedList
  • Урок 39. 00:06:55
    S04 - L04 -- Types of LinkedList
  • Урок 40. 00:07:57
    S04 - L05 -- Why so many types of LinkedList
  • Урок 41. 00:05:06
    S04 - L06 -- How is LinkedList stored in Memory
  • Урок 42. 00:05:57
    S04 - L07 -- Creation of Single LinkedList (SLL)
  • Урок 43. 00:07:24
    S04 - L08 -- Insertion in SLL - Dry Run
  • Урок 44. 00:10:57
    S04 - L09 -- Insertion in SLL - Algo
  • Урок 45. 00:03:50
    S04 - L10 -- Traversal of SLL
  • Урок 46. 00:04:53
    S04 - L11 -- Search node in SLL
  • Урок 47. 00:09:14
    S04 - L12 -- Deletion of node from SLL - Dry Run
  • Урок 48. 00:08:48
    S04 - L13 -- Deletion of node from SLL - Algo
  • Урок 49. 00:03:15
    S04 - L14 -- Delete entire SLL
  • Урок 50. 00:03:30
    S04 - L15 -- Time Complexity of SLL
  • Урок 51. 00:04:07
    S04 - L16 -- Creation of Circular Single LinkedList (CSLL)
  • Урок 52. 00:06:16
    S04 - L17 -- Insertion of data in CSLL - Dry Run
  • Урок 53. 00:07:45
    S04 - L18 -- Insertion of data in CSLL - Algo
  • Урок 54. 00:02:31
    S04 - L19 -- Traverse CSLL
  • Урок 55. 00:04:54
    S04 - L20 -- Search a node in CSLL
  • Урок 56. 00:05:35
    S04 - L21 -- Delete a node from CSLL - Dry Run
  • Урок 57. 00:07:05
    S04 - L22 -- Deletion of node from CSLL - Algo
  • Урок 58. 00:04:02
    S04 - L23 -- Deletion of entire CSLL
  • Урок 59. 00:04:17
    S04 - L24 -- Time Complexity of CSLL
  • Урок 60. 00:05:59
    S04 - L25 -- Create Double Linked List (DLL)
  • Урок 61. 00:08:00
    S04 - L26 -- Insert node in DLL - Dry Run
  • Урок 62. 00:13:35
    S04 - L27 -- Insert node in DLL - Algo
  • Урок 63. 00:02:32
    S04 - L28 -- Traverse DLL
  • Урок 64. 00:03:21
    S04 - L29 -- Reverse Traversal of DLL
  • Урок 65. 00:03:13
    S04 - L30 -- Search a node in DLL
  • Урок 66. 00:07:21
    S04 - L31 -- Delete a node from DLL - Dry Run
  • Урок 67. 00:09:40
    S04 - L32 -- Delete a node from DLL - Algo
  • Урок 68. 00:04:47
    S04 - L33 -- Delete entire DLL
  • Урок 69. 00:04:13
    S04 - L34 -- Time Complexity of DLL
  • Урок 70. 00:07:37
    S04 - L35 -- Create Double Circular LinkedList (CDLL)
  • Урок 71. 00:11:06
    S04 - L36 -- Insert node in CDLL - Dry Run
  • Урок 72. 00:09:46
    S04 - L37 -- Insert node in CDLL - Algo
  • Урок 73. 00:03:36
    S04 - L38 -- Traverse CDLL
  • Урок 74. 00:03:28
    S04 - L39 -- Reverse traverse CDLL
  • Урок 75. 00:04:31
    S04 - L40 -- Search a node in CDLL
  • Урок 76. 00:08:45
    S04 - L41 -- Delete a node from CDLL - Dry Run
  • Урок 77. 00:10:38
    S04 - L42 -- Delete a node from CDLL - Algo
  • Урок 78. 00:06:29
    S04 - L43 -- Delete entire CDLL
  • Урок 79. 00:04:27
    S04 - L44 -- Time Complexity of CDLL
  • Урок 80. 00:06:43
    S04 - L45 -- SLL vs CSLL vs DLL vs DLL
  • Урок 81. 00:05:10
    S04 - L46 -- Practical uses of LinkedList
  • Урок 82. 00:04:55
    L01 -- What and Why of Stack
  • Урок 83. 00:06:19
    L02 -- ARRAY - Create & Push
  • Урок 84. 00:07:52
    L03 -- ARRAY - Pop, Peek, isEmpty, isFull, Delete
  • Урок 85. 00:06:36
    L04 -- LinkedList - Create, Push, Pop
  • Урок 86. 00:05:06
    L05 -- LinkedList - Peek, Delete
  • Урок 87. 00:03:36
    L06 -- When to use or avoid Stack
  • Урок 88. 00:03:53
    S06 - L01 -- What and Why of Queue
  • Урок 89. 00:06:59
    S06 - L02 -- LINEAR QUEUE(Array) - Create, Enqueue
  • Урок 90. 00:07:23
    S06 - L03 -- LINEAR QUEUE((Array)) - deQueue, isEmpty, isFull, Delete
  • Урок 91. 00:04:45
    S06 - L04 -- Why Circular Queue
  • Урок 92. 00:05:57
    S06 - L05 -- CIRCULAR QUEUE(Array) - Enqueue
  • Урок 93. 00:03:19
    S06 - L06 -- CIRCULAR QUEUE(Array) - Dequeue
  • Урок 94. 00:05:22
    S06 - L07 -- CIRCULAR QUEUE(Array) - Peek, isEmpty, isFull, Delete
  • Урок 95. 00:05:31
    S06 - L08 -- LINEAR QUEUE(LL) - Enqueue
  • Урок 96. 00:03:11
    S06 - L09 -- LINEAR QUEUE(LL) - DeQueue
  • Урок 97. 00:04:04
    S06 - L10 -- LINEAR QUEUE(LL) - Peek, isEmpty, Delete
  • Урок 98. 00:04:29
    S06 - L11 -- Array vs LinkedList Implementation
  • Урок 99. 00:09:30
    S08.01 - L01 -- What is Tree
  • Урок 100. 00:02:08
    S08.01 - L02 -- Why learn Tree
  • Урок 101. 00:10:01
    S08.01 - L03 -- Tree Terminologies - Part#1
  • Урок 102. 00:04:29
    S08.01 - L03 -- Tree Terminologies - Part#2
  • Урок 103. 00:04:15
    S08.01 - L04 -- What & Why of Binary Ttree
  • Урок 104. 00:05:29
    S08.01 - L05 -- Types of Binary Tree
  • Урок 105. 00:08:54
    S08.01 - L06 -- How is Tree Represented in Code
  • Урок 106. 00:03:17
    S08.01 - L07 -- Create blank Binary Tree(LL)
  • Урок 107. 00:14:45
    S08.01 - L08 -- Pre-order traversal Binary Tree(LL)
  • Урок 108. 00:06:18
    S08.01 - L09 -- In-order traversal Binary Tree(LL)
  • Урок 109. 00:06:33
    S08.01 - L10 -- Post-order traversal Binary Tree(LL)
  • Урок 110. 00:07:26
    S08.01 - L11 -- Level-order traversal Binary Tree(LL)
  • Урок 111. 00:08:10
    S08.01 - L12 -- Search for value in Binary Tree(LL)
  • Урок 112. 00:05:54
    S08.01 - L13 -- Insert value in Binary Tree(LL)
  • Урок 113. 00:06:55
    S08.01 - L14 -- Delete value from Binary Tree(LL)
  • Урок 114. 00:03:59
    S08.01 - L15 -- Delete Binary Tree(LL)
  • Урок 115. 00:05:14
    S08.01 - L16 -- Create Binary Tree(Array)
  • Урок 116. 00:05:55
    S08.01 - L17 -- Insert value in Binary Tree(Array)
  • Урок 117. 00:03:39
    S08.01 - L18 -- Search for value in Binary Tree(Array)
  • Урок 118. 00:06:18
    S08.01 - L19 -- Inorder traversal of Binary Tree(Array)
  • Урок 119. 00:03:48
    S08.01 - L20 -- Pre-order traversal of Binary Tree(Array)
  • Урок 120. 00:04:18
    S08.01 - L21 -- Post-order traversal of Binary Tree(Array)
  • Урок 121. 00:02:46
    S08.01 - L22 -- Level-order traversal of Binary Tree(Array)
  • Урок 122. 00:05:34
    S08.01 - L23 -- Delete node from Binary Tree(Array)
  • Урок 123. 00:03:26
    S08.01 - L24 -- Delete Binary Tree(Array)
  • Урок 124. 00:04:44
    S08.01 - L25 -- Binary Tree (Array vs Linked List)
  • Урок 125. 00:04:45
    S08.02 - L01 -- What & Why of BST
  • Урок 126. 00:10:00
    S08.02 - L02 -- Creation & Searching in BST
  • Урок 127. 00:07:37
    S08.02 - L03 -- Traversing a BST
  • Урок 128. 00:13:58
    S08.02 - L04 -- Inserting a node in BST
  • Урок 129. 00:15:55
    S08.02 - L05 -- Deleting a node from BST
  • Урок 130. 00:03:43
    S08.02 - L06 -- Deleting a BST
  • Урок 131. 00:06:49
    S08.03 - L01 -- Why learn AVL Tree
  • Урок 132. 00:10:21
    S08.03 - L02 -- What is AVL Tree
  • Урок 133. 00:06:28
    S08.03 - L03 -- Create Search Traverse AVL Tree
  • Урок 134. 00:12:02
    S08.03 - L04 -- Insert in AVL_LL Theory
  • Урок 135. 00:04:48
    S08.03 - L05 -- Insert in AVL_LL Algorithm
  • Урок 136. 00:08:13
    S08.03 - L06 -- Insert in AVL LR
  • Урок 137. 00:08:24
    S08.03 - L07 -- Insert in AVL RR
  • Урок 138. 00:06:23
    S08.03 - L08 -- Insert in AVL RL
  • Урок 139. 00:14:20
    S08.03 - L09 -- Insert End to End Case
  • Урок 140. 00:11:27
    S08.03 - L10 -- Delete LL LR RR RL
  • Урок 141. 00:11:57
    S08.03 - L11 -- Delete End to End Case
  • Урок 142. 00:07:37
    S08.03 - L12 -- Delete AVL Tree & Tree Comparison
  • Урок 143. 00:12:27
    S08.04 - L01 -- What Why and Type of Heap
  • Урок 144. 00:04:45
    S08.04 - L02 -- Create, Peek, Size of Heap
  • Урок 145. 00:05:12
    S08.04 - L03 -- Insert element in Heap
  • Урок 146. 00:06:04
    S08.04 - L04 -- Extract and Delete from Heap
  • Урок 147. 00:03:50
    S08.04 - L05 -- Why avoid Reference based implementation ?
  • Урок 148. 00:05:57
    S08.05 - L01 -- What and Why of Trie
  • Урок 149. 00:06:53
    S08.05 - L02 -- Create Insert in Trie
  • Урок 150. 00:02:36
    S08.05 - L03 -- Search a String in Trie
  • Урок 151. 00:07:38
    S08.05 - L04 -- Delete a String from Trie
  • Урок 152. 00:02:33
    S08.05 - L05 -- Practical Uses of Trie
  • Урок 153. 00:03:39
    S09 - L01 -- Introduction to Hashing
  • Урок 154. 00:05:13
    S09 - L02 -- Why learn Hashing ?
  • Урок 155. 00:08:53
    S09 - L03 -- Introduction to Hash Functions
  • Урок 156. 00:14:55
    S09 - L04 -- Types of Collision Resolution Techniques
  • Урок 157. 00:04:31
    S09 - L05 -- What happens when Hash Table is full ?
  • Урок 158. 00:08:27
    S09 - L06 -- Collision Resolution Techniques Compared
  • Урок 159. 00:06:41
    S09 - L07 -- Practical Use of Hashing
  • Урок 160. 00:04:37
    S09 - L08 -- Hashing vs Other DS
  • Урок 161. 00:03:55
    S10 - L01 -- What and Why of Sorting
  • Урок 162. 00:07:15
    S10 - L02 -- Types of Sorting Techniques
  • Урок 163. 00:05:02
    S10 - L03 -- Sorting Terminologies
  • Урок 164. 00:07:47
    S10 - L04 -- Bubble Sort
  • Урок 165. 00:06:08
    S10 - L05 -- Selection Sort
  • Урок 166. 00:08:52
    S10 - L06 -- Insertion Sort
  • Урок 167. 00:08:35
    S10 - L07 -- Bucket Sort
  • Урок 168. 00:11:12
    S10 - L08 -- Merge Sort
  • Урок 169. 00:12:37
    S10 - L09 -- Quick Sort Part#1
  • Урок 170. 00:06:01
    S10 - L09 -- Quick Sort Part#2
  • Урок 171. 00:12:42
    S10 - L10 -- HeapSort
  • Урок 172. 00:02:15
    S10 - L11 -- Sorting Techniques compared
  • Урок 173. 00:08:57
    S11 - L01 -- What and Why of Graphs
  • Урок 174. 00:05:12
    S11 - L02 -- Graph Terminologies
  • Урок 175. 00:04:00
    S11 - L03 -- Types of Graphs
  • Урок 176. 00:07:09
    S11 - L04 -- Graph Representation in Code
  • Урок 177. 00:08:30
    S11 - L05 -- BFS Algorithm
  • Урок 178. 00:06:34
    S11 - L06 -- BFS Time Complexity
  • Урок 179. 00:08:08
    S11 - L07 -- DFS Algorithm
  • Урок 180. 00:05:59
    S11 - L08 -- DFS Time Complexity
  • Урок 181. 00:04:27
    S11 - L09 -- BFS vs DFS
  • Урок 182. 00:03:45
    S11 - L10 -- What is Topological Sort
  • Урок 183. 00:06:33
    S11 - L11 -- Topological Sort Dry Run
  • Урок 184. 00:07:12
    S11 - L12 -- Why Topological Sort Works
  • Урок 185. 00:06:39
    S11 - L13 -- Topological Sort Algorithm
  • Урок 186. 00:06:30
    S11 - L14 -- What is Single Source Shortest Path Problem(SSSP)
  • Урок 187. 00:08:08
    S11 - L15 -- BFS for SSSP
  • Урок 188. 00:04:04
    S11 - L16 -- Why BFS does not works for Weighted Graph SSSP
  • Урок 189. 00:03:02
    S11 - L17 -- Why DFS does not works for SSSP
  • Урок 190. 00:11:17
    S11 - L18 -- Dijkstra for SSSP
  • Урок 191. 00:06:07
    S11 - L19 -- Why Dijkstra does not work for Negative Cycle
  • Урок 192. 00:09:48
    S11 - L20 -- BellmanFord Dry run for SSSP
  • Урок 193. 00:04:28
    S11 - L21 -- BellanFord Algorithm for SSSP
  • Урок 194. 00:09:09
    S11 - L22 -- How Bellman Ford works for Negative Cycle
  • Урок 195. 00:10:09
    S11 - L23 -- Why BellmanFord runs for V-1 times
  • Урок 196. 00:04:33
    S11 - L24 -- BFS vs Dijkstra vs BellmanFord
  • Урок 197. 00:05:35
    S11 - L25 -- What is All Pair Shortest Path Problem(APSP)
  • Урок 198. 00:05:18
    S11 - L26 -- Dry run of BFS Dijkstra Bellman for APSP
  • Урок 199. 00:10:09
    S11 - L27 -- Floyd Warshall Algorithm for APSP
  • Урок 200. 00:08:13
    S11 - L28 -- Why Floyd Warshall Algorithm always works
  • Урок 201. 00:03:50
    S11 - L29 -- Why Floyd does not works for Negative Cycle
  • Урок 202. 00:04:25
    S11 - L30 -- BFS vs Dijkstra vs Bellman vs Floys
  • Урок 203. 00:04:39
    S11 - L31 -- What is Minimum Spanning Tree (MST)
  • Урок 204. 00:08:49
    S11 - L32.1 -- DisjointSet
  • Урок 205. 00:12:40
    S11 - L32.2 -- Kruskals Algorithm
  • Урок 206. 00:06:34
    S11 - L33 -- Prims Algorithm Dry Run
  • Урок 207. 00:05:23
    S11 - L34 -- Prims Algorithm Explained
  • Урок 208. 00:02:34
    S11 - L35 -- Prims vs Kruskal
  • Урок 209. 00:04:46
    S12.1 - L01 -- Magic Framework
  • Урок 210. 00:06:18
    S12.2 - L01 -- Greedy Algo Introduction
  • Урок 211. 00:10:51
    S12.2 - L02 -- Known Algos
  • Урок 212. 00:08:05
    S12.2 - L03 -- Activity Selection Problem
  • Урок 213. 00:09:07
    S12.2 - L04 -- Coin Change Problem
  • Урок 214. 00:11:56
    S12.2 - L05 -- Fractional Knapsack Problem
  • Урок 215. 00:07:35
    S12.3 - L01 -- What and Why of Divide&Conquer
  • Урок 216. 00:05:48
    S12.3 - L02 -- Binary Search, Quick, Merge Sortt
  • Урок 217. 00:03:32
    S12.3 - L03 -- Fibonacci Series
  • Урок 218. 00:09:38
    S12.3 - L04 -- Number Factor
  • Урок 219. 00:08:49
    S12.3 - L05 -- House thief
  • Урок 220. 00:12:58
    S12.3 - L06 -- Convert One String to Another
  • Урок 221. 00:07:49
    S12.3 - L07 -- Zero-One Knapsack
  • Урок 222. 00:08:52
    S12.3 - L08 -- Longest Common Subsequence
  • Урок 223. 00:09:47
    S12.3 - L09 -- Longest Palindromic Subsequence
  • Урок 224. 00:09:11
    S12.3 - L10 -- Longest Palindromic Substring
  • Урок 225. 00:07:13
    S12.3 - L11 -- Min Cost to Reach End of Array
  • Урок 226. 00:10:30
    S12.3 - L12 -- Number of Paths to reach last cell with given Cost
  • Урок 227. 00:04:46
    S12.4 - L01 -- What and Why of Dynamic Programming
  • Урок 228. 00:06:41
    S12.4 - L02 -- Top Down Approach
  • Урок 229. 00:07:45
    S12.4 - L03 -- Bottom Up Approach
  • Урок 230. 00:03:57
    S12.4 - L04 -- Is Merge Sort Dynamic Programming ?
  • Урок 231. 00:15:26
    S12.4 - L05 -- Number Factor Problem
  • Урок 232. 00:12:15
    S12.4 - L06 -- HouseThief Problem
  • Урок 233. 00:11:20
    S12.4 - L07 -- Convert One String to Another
  • Урок 234. 00:13:16
    S12.4 - L08 -- Zero One Knapsack Problem
  • Урок 235. 00:10:20
    S12.4 - L09 -- Longest Common Subsequence
  • Урок 236. 00:10:53
    S12.4 - L10 -- Longest Palindromic Subsequence
  • Урок 237. 00:12:34
    S12.4 - L11 -- Longest Palindromic Substring
  • Урок 238. 00:12:35
    S12.4 - L12 -- Min Cost to Reach End of Array
  • Урок 239. 00:24:53
    S12.4 - L13 -- Ways to Reach last cell