1. Урок 1. 00:07:21
    Introduction
  2. Урок 2. 00:06:48
    Agenda and Scope
  3. Урок 3. 00:07:05
    How to Succeed
  4. Урок 4. 00:13:47
    Pseudoclassical JavaScript
  5. Урок 5. 00:09:44
    Defining a Class
  6. Урок 6. 00:01:48
    Using a Class
  7. Урок 7. 00:00:18
    Exercise: Creating a Constructor
  8. Урок 8. 00:04:02
    Creating a Constructor Solution
  9. Урок 9. 00:12:50
    Stacks
  10. Урок 10. 00:06:19
    Stacks Interface
  11. Урок 11. 00:07:23
    Implementing a Stack
  12. Урок 12. 00:03:28
    Queues
  13. Урок 13. 00:02:06
    Exercise: Creating Stacks and Queues
  14. Урок 14. 00:12:19
    Creating Stacks and Queues Solution
  15. Урок 15. 00:03:10
    Why Recursion?
  16. Урок 16. 00:10:41
    Tracing Recursive Execution
  17. Урок 17. 00:03:09
    Template for a Recursive Function
  18. Урок 18. 00:09:47
    Looping
  19. Урок 19. 00:04:33
    Factorial with Loop
  20. Урок 20. 00:11:15
    Factorial with Recursion
  21. Урок 21. 00:03:08
    Exercise: Recursion Interview Questions
  22. Урок 22. 00:10:34
    Recursive Reverse Solution
  23. Урок 23. 00:15:21
    Recursive Multiplier Solution
  24. Урок 24. 00:13:47
    MinStack Solution
  25. Урок 25. 00:09:32
    Implementing a Queue with Two Stacks Solution
  26. Урок 26. 00:06:56
    Space vs. Time Complexity
  27. Урок 27. 00:11:05
    Calculating Time Complexity
  28. Урок 28. 00:12:58
    Understanding Big-O
  29. Урок 29. 00:07:12
    Calculating Big-O of JS Operations
  30. Урок 30. 00:12:02
    Calculating Big-O of Loops
  31. Урок 31. 00:00:34
    Exercise: Calculating Time Complexity
  32. Урок 32. 00:03:00
    Calculating Time Complexity Solution
  33. Урок 33. 00:13:54
    Bubble Sort
  34. Урок 34. 00:03:50
    Stability and Adaptability
  35. Урок 35. 00:10:12
    Selection & Insertion Sort
  36. Урок 36. 00:00:51
    Exercise: Bubble, Insertion, and Selection Sort
  37. Урок 37. 00:02:56
    Bubble, Insertion, and Selection Sort Solution
  38. Урок 38. 00:05:59
    Merge Sort
  39. Урок 39. 00:12:27
    Pseudocoding the Merge Routine
  40. Урок 40. 00:10:37
    Pseudocoding Merge Sort
  41. Урок 41. 00:10:44
    Time Complexity for Merge Sort
  42. Урок 42. 00:03:38
    Quick Sort Overview
  43. Урок 43. 00:12:06
    Understanding the Quick Sort Partition
  44. Урок 44. 00:06:23
    Pseudocoding Quick Sort Part 1
  45. Урок 45. 00:09:31
    Pseudocoding Quick Sort Part 2
  46. Урок 46. 00:05:41
    Reviewing the Pseudocode
  47. Урок 47. 00:12:28
    Debugging the Quick Sort Algorithm
  48. Урок 48. 00:11:46
    Quick Sort Review Part 1
  49. Урок 49. 00:11:50
    Quick Sort Review Part 2
  50. Урок 50. 00:03:47
    Trees
  51. Урок 51. 00:08:25
    Linked Lists
  52. Урок 52. 00:11:49
    Pseudocoding a Linked List
  53. Урок 53. 00:00:20
    Exercise: Implement a Linked List
  54. Урок 54. 00:15:58
    Implement a Linked List Solution
  55. Урок 55. 00:05:20
    Implementing a Tree
  56. Урок 56. 00:07:49
    Review: Time Complexity
  57. Урок 57. 00:07:40
    Review: Elementary Sorting
  58. Урок 58. 00:04:07
    Review: Recursion
  59. Урок 59. 00:07:33
    Review: Merge Sort
  60. Урок 60. 00:13:27
    Review: Quick Sort Part 1
  61. Урок 61. 00:10:19
    Review: Quick Sort Part 2
  62. Урок 62. 00:05:42
    Review: Stacks & Queues
  63. Урок 63. 00:11:05
    Review: Linked Lists
  64. Урок 64. 00:07:13
    Review: Trees Part 1
  65. Урок 65. 00:11:36
    Review: Trees Part 2
  66. Урок 66. 00:06:37
    Binary Search Tree Overview
  67. Урок 67. 00:00:34
    Exercise: Binary Search Trees
  68. Урок 68. 00:08:09
    Pseudocoding a Binary Search Tree
  69. Урок 69. 00:11:04
    BST Search Procedure
  70. Урок 70. 00:14:41
    BST Review & Scoping Discussion
  71. Урок 71. 00:11:17
    Pseudocoding the BST contains() Method
  72. Урок 72. 00:10:51
    Binary Search Tree Exercise Solution
  73. Урок 73. 00:10:13
    In-Order Traversal
  74. Урок 74. 00:12:18
    Pseudocoding In-Order Traversal Part 1
  75. Урок 75. 00:10:57
    Pseudocoding In-Order Traversal Part 2
  76. Урок 76. 00:08:16
    Pre-Order Traversal
  77. Урок 77. 00:04:08
    Post-Order Traversal
  78. Урок 78. 00:08:32
    Initial Time Complexity for a BST
  79. Урок 79. 00:13:20
    Deleting Min/Max Nodes
  80. Урок 80. 00:04:36
    BST Review
  81. Урок 81. 00:10:40
    Pseudocoding Min/Max Deletion
  82. Урок 82. 00:09:10
    Reviewing the Min/Max Pseudocode Part 1
  83. Урок 83. 00:17:01
    Reviewing the Min/Max Pseudocode Part 2
  84. Урок 84. 00:01:24
    Exercise: Deleting Single-Child Nodes
  85. Урок 85. 00:11:19
    Deleting BST Nodes Solution Part 1
  86. Урок 86. 00:07:13
    Deleting BST Nodes Solution Part 2
  87. Урок 87. 00:05:02
    Exercise: Deleting Two Children
  88. Урок 88. 00:08:19
    Deleting Two Children Solution
  89. Урок 89. 00:04:45
    Analysis of Time Complexity
  90. Урок 90. 00:11:19
    Graph Vocabulary & Representations
  91. Урок 91. 00:04:59
    Pseudocoding the Matrix Constructor
  92. Урок 92. 00:09:02
    Pseudocoding the addNode() Method
  93. Урок 93. 00:05:32
    Pseudocoding the addEdges() Method
  94. Урок 94. 00:02:51
    Exercise: Adding Nodes and Edges
  95. Урок 95. 00:08:37
    Adding Nodes and Edges Solution
  96. Урок 96. 00:04:05
    Adjacency List
  97. Урок 97. 00:03:51
    Pseudocoding an Adjacency List
  98. Урок 98. 00:01:02
    Exercise: Implement a Graph
  99. Урок 99. 00:10:01
    Implement a Graph Solution
  100. Урок 100. 00:03:03
    Graph Traversing & Depth-First Search
  101. Урок 101. 00:09:19
    Pseudocoding DFS Part 1
  102. Урок 102. 00:14:34
    Pseudocoding DFS Part 2
  103. Урок 103. 00:04:58
    Breadth-FIrst Search
  104. Урок 104. 00:12:48
    Pseudocoding BFS
  105. Урок 105. 00:05:01
    Breadth-First Search with a Graph Solution
  106. Урок 106. 00:06:19
    BFS Graph Stack Trace Part 1
  107. Урок 107. 00:09:24
    BFS Graph Stack Trace Part 2
  108. Урок 108. 00:03:30
    Depth-First Search with a Tree Solution
  109. Урок 109. 00:07:10
    Breadth-First Search Solution
  110. Урок 110. 00:13:57
    Breadth-First Search Stack Trace
  111. Урок 111. 00:06:32
    Hash Tables
  112. Урок 112. 00:09:00
    Pseudocoding a Hashing Function
  113. Урок 113. 00:11:40
    Key Components of a Hash Table
  114. Урок 114. 00:07:58
    Pseudocoding set(), get(), & remove()
  115. Урок 115. 00:04:55
    Handling Collisions
  116. Урок 116. 00:00:29
    Exercise: Implementing a Hash Table
  117. Урок 117. 00:07:01
    Implementing a Hash Table Solution
  118. Урок 118. 00:09:27
    Next Steps