Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Master the Coding Interview: Big Tech (FAANG) Interviews, а также все другие курсы, прямо сейчас!
Премиум
  1. Урок 1. 00:02:35
    Master The Coding Interview: Big Tech (FAANG) Interview
  2. Урок 2. 00:11:05
    Course Breakdown
  3. Урок 3. 00:07:15
    Interview Question #1 Two Sum
  4. Урок 4. 00:11:46
    How To Approach Our Problem
  5. Урок 5. 00:06:41
    Writing Our Brute Force Solution
  6. Урок 6. 00:09:24
    Testing Our Solution With Our Test Cases
  7. Урок 7. 00:01:50
    Submitting To Leetcode
  8. Урок 8. 00:10:38
    Analyzing Space and Time Complexity
  9. Урок 9. 00:08:07
    Optimizing Our Solution
  10. Урок 10. 00:05:22
    Coding Our Optimal Solution
  11. Урок 11. 00:08:03
    Testing Our Optimal Solution With Our Test Cases
  12. Урок 12. 00:03:25
    Checking Performance On LeetCode
  13. Урок 13. 00:04:47
    Interview Question #2 - Container With Most Water
  14. Урок 14. 00:04:20
    Coming Up With Test Cases
  15. Урок 15. 00:12:50
    Thinking Through A Logical Brute Force Solution
  16. Урок 16. 00:07:21
    Coding Out Our Brute Force Solution
  17. Урок 17. 00:04:45
    Stepping Through Our Code
  18. Урок 18. 00:13:53
    Thinking About Our Optimal Solution
  19. Урок 19. 00:09:51
    Coding Our Optimal Solution And Testing On LeetCode
  20. Урок 20. 00:07:20
    Interview Question #3 - Trapping Rainwater
  21. Урок 21. 00:12:46
    Thinking About A Logical Solution
  22. Урок 22. 00:08:53
    Coding Our Brute Force Solution
  23. Урок 23. 00:24:27
    Figuring Out Our Optimization Strategy
  24. Урок 24. 00:13:27
    Coding Our Optimal Solution
  25. Урок 25. 00:02:10
    Optimal Code And Testing On LeetCode
  26. Урок 26. 00:07:09
    Interview Question #4 -Typed Out Strings
  27. Урок 27. 00:08:03
    Logic Of Our Brute Force Solution
  28. Урок 28. 00:09:38
    Coding Our Brute Force Solution
  29. Урок 29. 00:07:23
    Space And Time Complexity
  30. Урок 30. 00:11:53
    Coming Up With Optimal Solution
  31. Урок 31. 00:12:36
    Coding Our Optimal Solution
  32. Урок 32. 00:05:52
    Submitting To LeetCode
  33. Урок 33. 00:06:40
    Interview Question #5 - Longest Substring Without Repeating Characters
  34. Урок 34. 00:06:35
    Coming Up With A Brute Force Approach
  35. Урок 35. 00:09:58
    Coding Our Brute Force Solution
  36. Урок 36. 00:03:17
    Space And Time Complexity
  37. Урок 37. 00:05:19
    Sliding Window Technique
  38. Урок 38. 00:02:16
    Hints For Optimizing Our Solution
  39. Урок 39. 00:09:10
    Thinking About Optimal Solution
  40. Урок 40. 00:08:31
    Coding Our Optimal Solution
  41. Урок 41. 00:03:19
    Optimal Code And Testing On LeetCode
  42. Урок 42. 00:09:42
    Intro To Palindromes
  43. Урок 43. 00:08:40
    Interview Question #6 - Valid Palindrome
  44. Урок 44. 00:10:16
    Almost A Palindrome
  45. Урок 45. 00:06:51
    Figuring Out Our Solution
  46. Урок 46. 00:09:47
    Coding Our Solution
  47. Урок 47. 00:03:59
    Linked List Introduction
  48. Урок 48. 00:08:22
    Basic Algorithm: Reverse a Linked List
  49. Урок 49. 00:10:56
    Thinking About Our Solution
  50. Урок 50. 00:07:08
    Coding Reverse A Linked List Solution
  51. Урок 51. 00:06:51
    Interview Question #7 - M, N Reversals
  52. Урок 52. 00:16:34
    Coming Up With A Logical Solution
  53. Урок 53. 00:15:39
    Coding Our Solution
  54. Урок 54. 00:08:53
    Interview Question #8 - Merge Multi-Level Doubly Linked List
  55. Урок 55. 00:08:35
    Figuring Out Our Test Cases
  56. Урок 56. 00:16:48
    Thinking About Our Approach
  57. Урок 57. 00:14:38
    Coding Out Our Solution
  58. Урок 58. 00:11:40
    Interview Question #9 - Cycle Detection
  59. Урок 59. 00:03:05
    Floyd's Tortoise And Hare
  60. Урок 60. 00:08:55
    Coding Floyd's Algorithm
  61. Урок 61. 00:25:52
    Optional: Proof Of How Floyd's Algorithm Works
  62. Урок 62. 00:03:12
    Intro to Stacks and Queues
  63. Урок 63. 00:09:24
    Interview Question #10 - Valid Parentheses
  64. Урок 64. 00:08:16
    Walking Through Our Problem - Identifying The Need For A Stack
  65. Урок 65. 00:09:19
    Coding Our Solution With A Stack
  66. Урок 66. 00:07:39
    Interview Question #11 - Minimum Brackets To Remove
  67. Урок 67. 00:12:46
    Thinking About Our Solution
  68. Урок 68. 00:10:54
    Coding Our Solution
  69. Урок 69. 00:04:11
    Question #12 - Implement Queue With Stack
  70. Урок 70. 00:10:20
    Figuring Out Our Solution
  71. Урок 71. 00:08:28
    Coding Our Solution
  72. Урок 72. 00:03:08
    Introducing Recursion
  73. Урок 73. 00:19:55
    Optional: Tail Recursion
  74. Урок 74. 00:02:24
    Sorting
  75. Урок 75. 00:06:51
    Interview Question #13 - Kth Largest Element
  76. Урок 76. 00:12:37
    Insights From Quick Sort
  77. Урок 77. 00:08:18
    Understanding Divide And Conquer
  78. Урок 78. 00:14:54
    Coding Quicksort Into Our Solution
  79. Урок 79. 00:06:56
    Understanding Hoare's Quickselect Algorithm
  80. Урок 80. 00:11:48
    Coding Our Solution With Quickselect
  81. Урок 81. 00:09:33
    Understanding Binary Search
  82. Урок 82. 00:06:23
    How To Code Binary Search
  83. Урок 83. 00:05:06
    Question #14 - Start And End Of Target In A Sorted Array
  84. Урок 84. 00:10:49
    Walking Through Our Solution
  85. Урок 85. 00:12:56
    Coding Our Solution
  86. Урок 86. 00:01:53
    Intro to Binary Trees
  87. Урок 87. 00:06:55
    Question #15 - Maximum Depth of Binary Tree
  88. Урок 88. 00:19:13
    Learning The Process For Solving Binary Tree Problems
  89. Урок 89. 00:06:12
    Coding Our Solution
  90. Урок 90. 00:05:29
    Question #16 - Level Order Of Binary Tree
  91. Урок 91. 00:17:28
    Walking Through Our Solution
  92. Урок 92. 00:11:39
    Coding Out Level Order Traversal
  93. Урок 93. 00:06:44
    Question #17 - Right Side View of Tree
  94. Урок 94. 00:08:27
    Understanding The Breadth First Search Approach
  95. Урок 95. 00:09:23
    Understanding The Depth First Search Approach
  96. Урок 96. 00:12:24
    Thinking About Pre-Order, In-Order, and Post-Order Traversals For Our Solution
  97. Урок 97. 00:07:42
    Completing Our DFS Solution
  98. Урок 98. 00:11:56
    Coding Our Final DFS Solution
  99. Урок 99. 00:08:32
    Question #18 - Number Of Nodes In Complete Tree
  100. Урок 100. 00:10:27
    Thinking Deeply About A Full Binary Tree
  101. Урок 101. 00:15:29
    Figuring Out Number Of Nodes At Last Level
  102. Урок 102. 00:20:40
    Coding Out Our Full Solution
  103. Урок 103. 00:08:48
    Question #19 - Validate Binary Search Tree
  104. Урок 104. 00:15:05
    Thinking About Our Logical Solution
  105. Урок 105. 00:06:54
    Figuring Out Our Boundaries
  106. Урок 106. 00:07:59
    Coding Our Our Full Solution
  107. Урок 107. 00:08:46
    Introducing Heaps
  108. Урок 108. 00:07:36
    Insertion In Heaps - Understanding Sift Up
  109. Урок 109. 00:10:49
    Deletion In Heaps - Understanding Sift Down
  110. Урок 110. 00:10:49
    Starting To Code Our Priority Queue Class
  111. Урок 111. 00:05:50
    Coding Our Insertion And Sift Up Methods
  112. Урок 112. 00:13:01
    Coding Our Deletion And Sift Down Methods
  113. Урок 113. 00:07:24
    Introducing 2D Arrays - What Are They?
  114. Урок 114. 00:07:25
    Depth First Search In 2D-Arrays
  115. Урок 115. 00:09:44
    Coding DFS - Setting Up For DFS
  116. Урок 116. 00:08:41
    Coding DFS - Implementing Recursive DFS
  117. Урок 117. 00:07:49
    Breadth First Search In 2D-Arrays
  118. Урок 118. 00:10:06
    Coding BFS
  119. Урок 119. 00:09:10
    A General Approach To Thinking About Most Graph Questions
  120. Урок 120. 00:07:51
    Question #20 Number Of Islands
  121. Урок 121. 00:16:12
    Approaching Our Problem - Thinking Deeply About The Values
  122. Урок 122. 00:08:56
    Approaching Our Problem - Thinking About Traversals
  123. Урок 123. 00:19:09
    Coding Our Solution
  124. Урок 124. 00:14:39
    Thinking About Space And Time Complexity
  125. Урок 125. 00:06:58
    Question #21 Rotting Oranges
  126. Урок 126. 00:11:05
    Figuring Out Our Initial Logic
  127. Урок 127. 00:14:28
    Figuring Out The Rest Of Our Solution
  128. Урок 128. 00:14:48
    Coding Out Our Solution
  129. Урок 129. 00:06:20
    Question #22 - Walls And Gates
  130. Урок 130. 00:12:17
    Figuring Out Our Logical Solution
  131. Урок 131. 00:11:46
    Coding Out Our Solution
  132. Урок 132. 00:11:07
    Introduction To The Types Of Graphs
  133. Урок 133. 00:07:20
    Representing Our Graphs - Adjacency List & Adjacency Matrix
  134. Урок 134. 00:04:40
    Breadth First Search In Graphs
  135. Урок 135. 00:07:54
    Coding BFS
  136. Урок 136. 00:03:04
    Depth First Search In Graphs
  137. Урок 137. 00:07:04
    Coding DFS
  138. Урок 138. 00:12:52
    Question #23 - Time Needed to Inform All Employees
  139. Урок 139. 00:08:13
    Verifying Our Constraints And Thinking About Test Cases
  140. Урок 140. 00:09:38
    How To Represent Our Graph As An Adjacency List
  141. Урок 141. 00:07:49
    Solving Our Problem Logically Using DFS Traversal
  142. Урок 142. 00:10:02
    Coding Our DFS Solution
  143. Урок 143. 00:10:25
    Question #24 - Course Scheduler
  144. Урок 144. 00:07:57
    Thinking About Our Initial Solution - BFS
  145. Урок 145. 00:15:29
    Coding Out Our Initial BFS Solution
  146. Урок 146. 00:07:56
    What is Topological Sort?
  147. Урок 147. 00:04:50
    Thinking About A Solution With Topological Sort
  148. Урок 148. 00:15:48
    Coding Our Final Solution
  149. Урок 149. 00:12:40
    Question #25 - Network Time Delay
  150. Урок 150. 00:08:38
    Thinking About How To Approach The Problem
  151. Урок 151. 00:15:31
    Greedy Method & What Is Dijkstra's Algorithm?
  152. Урок 152. 00:08:56
    Thinking About A Solution With Dijkstra's Algorithm
  153. Урок 153. 00:17:33
    Coding Our Solution With Dijkstra
  154. Урок 154. 00:13:09
    Time And Space Complexity Of Our Solution
  155. Урок 155. 00:07:42
    Thinking About Negative Weights
  156. Урок 156. 00:16:23
    What is The Bellman-Ford Algorithm? - Conceptualizing Dynamic Programming
  157. Урок 157. 00:16:18
    What is The Bellman-Ford Algorithm? - The Algorithm Itself
  158. Урок 158. 00:09:20
    Coding Our Solution With Bellman-Ford
  159. Урок 159. 00:09:39
    Question #26 - Minimum Cost Of Climbing Stairs & How To Approach DP
  160. Урок 160. 00:15:49
    Understanding & Identifying Recurrence Relation
  161. Урок 161. 00:05:35
    First Step - Recursive Solution From Recurrence Relation
  162. Урок 162. 00:07:50
    Second Step - Memoizing Our Redundant Recursive Calls
  163. Урок 163. 00:07:51
    Coding Our Memoization Optimization
  164. Урок 164. 00:06:30
    Understanding The Bottom Up Approach (Tabulation)
  165. Урок 165. 00:05:25
    Third Step - Bottom Up Tabulation
  166. Урок 166. 00:06:53
    Fourth Step - Bottom Up Optimization
  167. Урок 167. 00:10:10
    Question #27 - Knight Probability In Chessboard
  168. Урок 168. 00:03:52
    Thinking About Test Cases To Help Us
  169. Урок 169. 00:15:30
    Identifying The Recurrence Relation
  170. Урок 170. 00:05:11
    First Step - Recursive Solution From Recurrence Relation
  171. Урок 171. 00:14:14
    Second Step - Memoizing Our Redundant Recursive Calls
  172. Урок 172. 00:14:00
    Figuring Out The Logic For Our Bottom Up Solution
  173. Урок 173. 00:08:32
    Third Step - Bottom Up Tabulation
  174. Урок 174. 00:06:56
    Fourth Step - Bottom Up Optimization
  175. Урок 175. 00:07:07
    Understanding The Basics Of Backtracking
  176. Урок 176. 00:04:20
    Question #28 - Sudoku Solver
  177. Урок 177. 00:11:19
    Learning The Backtracking Template
  178. Урок 178. 00:06:43
    Applying Our Backtracking Template To Sudoku Solver Logic
  179. Урок 179. 00:07:50
    Coding How To Get Box ID
  180. Урок 180. 00:07:06
    Setting Up Our Solution Code
  181. Урок 181. 00:19:19
    Coding The Recursive Backtracking Portion Of Our Solution
  182. Урок 182. 00:06:59
    Thinking About The Space And Time Complexity
  183. Урок 183. 00:10:53
    Understanding Interface Design & Question #29 - Monarchy
  184. Урок 184. 00:05:58
    Figuring Out Our Test Cases
  185. Урок 185. 00:09:42
    Thinking About The Logical Of The Monarchy
  186. Урок 186. 00:14:58
    Coding Our Monarchy Solution
  187. Урок 187. 00:01:08
    Introducing Tries
  188. Урок 188. 00:09:50
    Question #30 - Implement Prefix Trie
  189. Урок 189. 00:03:55
    Understanding The Logic For Our Methods
  190. Урок 190. 00:15:16
    Implementing Our Prefix Trie Data Structure Solution
  191. Урок 191. 00:02:25
    Section Overview
  192. Урок 192. 00:06:58
    What Is Good Code?
  193. Урок 193. 00:11:09
    Big O and Scalability
  194. Урок 194. 00:05:40
    O(n)
  195. Урок 195. 00:06:11
    O(1)
  196. Урок 196. 00:05:55
    Solution: Big O Calculation
  197. Урок 197. 00:02:30
    Solution: Big O Calculation 2
  198. Урок 198. 00:01:51
    Simplifying Big O
  199. Урок 199. 00:04:29
    Big O Rule 1
  200. Урок 200. 00:06:37
    Big O Rule 2
  201. Урок 201. 00:03:14
    Big O Rule 3
  202. Урок 202. 00:07:14
    O(n^2)
  203. Урок 203. 00:06:48
    Big O Rule 4
  204. Урок 204. 00:03:19
    Big O Cheat Sheet
  205. Урок 205. 00:05:33
    What Does This All Mean?
  206. Урок 206. 00:01:19
    O(n!)
  207. Урок 207. 00:03:33
    3 Pillars Of Programming
  208. Урок 208. 00:02:23
    Space Complexity
  209. Урок 209. 00:06:25
    Exercise: Space Complexity
  210. Урок 210. 00:07:14
    Exercise: Twitter
  211. Урок 211. 00:04:44
    Section Summary
  212. Урок 212. 00:13:52
    Arrays Introduction
  213. Урок 213. 00:06:41
    Static vs Dynamic Arrays
  214. Урок 214. 00:17:20
    Optional: Implementing An Array
  215. Урок 215. 00:04:11
    Hash Tables Introduction
  216. Урок 216. 00:05:57
    Hash Function
  217. Урок 217. 00:09:44
    Hash Collisions
  218. Урок 218. 00:02:02
    Hash Tables VS Arrays
  219. Урок 219. 00:02:27
    Linked Lists Introduction
  220. Урок 220. 00:04:37
    What Is A Linked List?
  221. Урок 221. 00:02:06
    Exercise: Why Linked Lists?
  222. Урок 222. 00:05:36
    Solution: Why Linked Lists?
  223. Урок 223. 00:05:46
    What Is A Pointer?
  224. Урок 224. 00:03:19
    Doubly Linked Lists
  225. Урок 225. 00:02:41
    Singly VS Doubly Linked Lists
  226. Урок 226. 00:05:08
    Linked Lists Review
  227. Урок 227. 00:02:59
    Stacks + Queues Introduction
  228. Урок 228. 00:03:29
    Stacks
  229. Урок 229. 00:03:31
    Queues
  230. Урок 230. 00:03:07
    Exercise: Stacks VS Queues
  231. Урок 231. 00:03:40
    Solution: Stacks VS Queues
  232. Урок 232. 00:02:20
    Stacks + Queues Review
  233. Урок 233. 00:06:24
    Trees Introduction
  234. Урок 234. 00:05:46
    Binary Trees
  235. Урок 235. 00:07:01
    O(log n)
  236. Урок 236. 00:06:13
    Binary Search Tree
  237. Урок 237. 00:03:43
    Balanced VS Unbalanced BST
  238. Урок 238. 00:02:27
    BST Pros and Cons
  239. Урок 239. 00:03:17
    Trie
  240. Урок 240. 00:03:57
    Graph + Tree Traversals
  241. Урок 241. 00:02:46
    BFS Introduction
  242. Урок 242. 00:03:24
    DFS Introduction
  243. Урок 243. 00:03:21
    BFS vs DFS
  244. Урок 244. 00:00:45
    Exercise: BFS vs DFS
  245. Урок 245. 00:03:17
    Solution: BFS vs DFS
  246. Урок 246. 00:09:16
    breadthFirstSearch()
  247. Урок 247. 00:05:22
    PreOrder, InOrder, PostOrder
  248. Урок 248. 00:12:04
    depthFirstSearch()
  249. Урок 249. 00:05:37
    Recursion Introduction
  250. Урок 250. 00:06:18
    Stack Overflow
  251. Урок 251. 00:10:28
    Anatomy Of Recursion
  252. Урок 252. 00:04:17
    Recursive VS Iterative
  253. Урок 253. 00:04:01
    When To Use Recursion
  254. Урок 254. 00:02:48
    Recursion Review
  255. Урок 255. 00:07:02
    Sorting Introduction
  256. Урок 256. 00:06:52
    The Issue With sort()
  257. Урок 257. 00:03:39
    Sorting Algorithms
  258. Урок 258. 00:03:46
    Bubble Sort
  259. Урок 259. 00:05:07
    Solution: Bubble Sort
  260. Урок 260. 00:02:40
    Selection Sort
  261. Урок 261. 00:02:24
    Solution: Selection Sort
  262. Урок 262. 00:01:37
    Dancing Algorithms
  263. Урок 263. 00:02:39
    Insertion Sort
  264. Урок 264. 00:02:07
    Solution: Insertion Sort
  265. Урок 265. 00:09:00
    Merge Sort and O(n log n)
  266. Урок 266. 00:04:45
    Solution: Merge Sort
  267. Урок 267. 00:07:41
    Quick Sort