WP Tutorials

Data Structures Easy to Advanced Course – Full Tutorial from a Google Engineer

Data Structures Easy to Advanced Course – Full Tutorial from a Google Engineer



Learn and master the most common data structures in this full course from Google engineer William Fiset. This course teaches data structures to beginners using high quality animations to represent the data structures visually.

You will learn how to code various data structures together with simple to follow step-by-step instructions. Every data structure presented will be accompanied by some working source code (in Java) to solidify your understanding.

💻 Code: https://github.com/williamfiset/data-structures

🎥 Course created by William Fiset. Check out his YouTube channel: https://www.youtube.com/channel/UCD8yeTczadqdARzQUp29PJw

⭐️ Course Contents ⭐️
⌨️ (0:00:00) Abstract data types
⌨️ (0:04:28) Introduction to Big-O
⌨️ (0:17:00) Dynamic and Static Arrays
⌨️ (0:27:40) Dynamic Array Code
⌨️ (0:35:03) Linked Lists Introduction
⌨️ (0:49:16) Doubly Linked List Code
⌨️ (0:58:26) Stack Introduction
⌨️ (1:09:40) Stack Implementation
⌨️ (1:12:49) Stack Code
⌨️ (1:15:58) Queue Introduction
⌨️ (1:22:03) Queue Implementation
⌨️ (1:27:26) Queue Code
⌨️ (1:31:32) Priority Queue Introduction
⌨️ (1:44:16) Priority Queue Min Heaps and Max Heaps
⌨️ (1:49:55) Priority Queue Inserting Elements
⌨️ (1:59:27) Priority Queue Removing Elements
⌨️ (2:13:00) Priority Queue Code
⌨️ (2:28:26) Union Find Introduction
⌨️ (2:33:57) Union Find Kruskal’s Algorithm
⌨️ (2:40:04) Union Find – Union and Find Operations
⌨️ (2:50:30) Union Find Path Compression
⌨️ (2:56:37) Union Find Code
⌨️ (3:03:54) Binary Search Tree Introduction
⌨️ (3:15:57) Binary Search Tree Insertion
⌨️ (3:21:20) Binary Search Tree Removal
⌨️ (3:34:47) Binary Search Tree Traversals
⌨️ (3:46:17) Binary Search Tree Code
⌨️ (3:59:26) Hash table hash function
⌨️ (4:16:25) Hash table separate chaining
⌨️ (4:24:10) Hash table separate chaining source code
⌨️ (4:35:44) Hash table open addressing
⌨️ (4:46:36) Hash table linear probing
⌨️ (5:00:21) Hash table quadratic probing
⌨️ (5:09:32) Hash table double hashing
⌨️ (5:23:56) Hash table open addressing removing
⌨️ (5:31:02) Hash table open addressing code
⌨️ (5:45:36) Fenwick Tree range queries
⌨️ (5:58:46) Fenwick Tree point updates
⌨️ (6:03:09) Fenwick Tree construction
⌨️ (6:09:21) Fenwick tree source code
⌨️ (6:14:47) Suffix Array introduction
⌨️ (6:17:54) Longest Common Prefix (LCP) array
⌨️ (6:21:07) Suffix array finding unique substrings
⌨️ (6:25:36) Longest common substring problem suffix array
⌨️ (6:37:04) Longest common substring problem suffix array part 2
⌨️ (6:43:41) Longest Repeated Substring suffix array
⌨️ (6:48:13) Balanced binary search tree rotations
⌨️ (6:56:43) AVL tree insertion
⌨️ (7:05:42) AVL tree removals
⌨️ (7:14:12) AVL tree source code
⌨️ (7:30:49) Indexed Priority Queue | Data Structure
⌨️ (7:55:10) Indexed Priority Queue | Data Structure | Source Code

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://www.freecodecamp.org/news

source

Comments (23)

  1. Click the "JOIN" button below the video to support freeCodeCamp.org!

  2. ⌨ (0:00:00) Abstract data types

    ⌨ (0:04:28) Introduction to Big-O

    ⌨ (0:17:00) Dynamic and Static Arrays

    ⌨ (0:27:40) Dynamic Array Code

    ⌨ (0:35:03) Linked Lists Introduction

    ⌨ (0:49:16) Doubly Linked List Code

    ⌨ (0:58:26) Stack Introduction

    ⌨ (1:09:40) Stack Implementation

    ⌨ (1:12:49) Stack Code

    ⌨ (1:15:58) Queue Introduction

    ⌨ (1:22:03) Queue Implementation

    ⌨ (1:27:26) Queue Code

    ⌨ (1:31:32) Priority Queue Introduction

    ⌨ (1:44:16) Priority Queue Min Heaps and Max Heaps

    ⌨ (1:49:55) Priority Queue Inserting Elements

    ⌨ (1:59:27) Priority Queue Removing Elements

    ⌨ (2:13:00) Priority Queue Code

    ⌨ (2:28:26) Union Find Introduction

    ⌨ (2:33:57) Union Find Kruskal's Algorithm

    ⌨ (2:40:04) Union Find – Union and Find Operations

    ⌨ (2:50:30) Union Find Path Compression

    ⌨ (2:56:37) Union Find Code

    ⌨ (3:03:54) Binary Search Tree Introduction

    ⌨ (3:15:57) Binary Search Tree Insertion

    ⌨ (3:21:20) Binary Search Tree Removal

    ⌨ (3:34:47) Binary Search Tree Traversals

    ⌨ (3:46:17) Binary Search Tree Code

    ⌨ (3:59:26) Hash table hash function

    ⌨ (4:16:25) Hash table separate chaining

    ⌨ (4:24:10) Hash table separate chaining source code

    ⌨ (4:35:44) Hash table open addressing

    ⌨ (4:46:36) Hash table linear probing

    ⌨ (5:00:21) Hash table quadratic probing

    ⌨ (5:09:32) Hash table double hashing

    ⌨ (5:23:56) Hash table open addressing removing

    ⌨ (5:31:02) Hash table open addressing code

    ⌨ (5:45:36) Fenwick Tree range queries

    ⌨ (5:58:46) Fenwick Tree point updates

    ⌨ (6:03:09) Fenwick Tree construction

    ⌨ (6:09:21) Fenwick tree source code

    ⌨ (6:14:47) Suffix Array introduction

    ⌨ (6:17:54) Longest Common Prefix (LCP) array

    ⌨ (6:21:07) Suffix array finding unique substrings

    ⌨ (6:25:36) Longest common substring problem suffix array

    ⌨ (6:37:04) Longest common substring problem suffix array part 2

    ⌨ (6:43:41) Longest Repeated Substring suffix array

    ⌨ (6:48:13) Balanced binary search tree rotations

    ⌨ (6:56:43) AVL tree insertion

    ⌨ (7:05:42) AVL tree removals

    ⌨ (7:14:12) AVL tree source code

    ⌨ (7:30:49) Indexed Priority Queue | Data Structure

    ⌨ (7:55:10) Indexed Priority Queue | Data Structure | Source Code

  3. hello, i'm a college student and i currently studying c++ so is this all information applicable for c++/c language

  4. just solved a math problem

  5. Does anyone have notes of this complete course?

  6. my-opinion : this course is not for someone who needs handson with explanation. TBH – very min handson, person just walks over through codes in few mins and gives reference. Course lists/topics are good, I would take the DSA topics from here and view some-one else video for handson explanation. Hope this helps who-ever reads it.

  7. Why java

  8. the worst explanation for the time and space complexity, i repeat the worst

  9. This video is just 6 hours long cuz you need to have in x1.5 for it to sound like normal speed

  10. In Which language is explained this course Java or python.

  11. After lot of difficulties in understanding….

    I could finally complete the video with my own handwritten notes. It took me nearly 1 week.

  12. ​ @evanwest4751 is acts like a massive Baguette

  13. This is a lot of info done very well I might add. 8 hours probably took a very long time to put together in this detail. Thank you for your hard work.

  14. i never finish, my gf is first, always.

  15. 2/17 50:44

  16. 2/15 26:48

  17. I haven't gone through the video but from the introduction and comments I've read so far: I just wanna say thank you so much 🙏. This is gold.

Leave your thought here

Your email address will not be published. Required fields are marked *

Enable Notifications OK No thanks