Skip to content
0:00 / 0:00

#linkedlist#hashtable#bigo

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

freeCodeCamp.org

12M subscribers • 23 videos on Hallway

YouTube
  • Recommended by 3 people: 3 in engineering communities.
  • Presented by William Fiset, Google engineer
  • Linked in the descriptionwilliamfiset/data-structures

Beginner. No background in the topic needed.

7.5M views7 years ago3 recommendations

Computer scienceDatabases and dataData structuresAlgorithms

William Fiset teaches common data structures using visual animations and Java implementations.

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: github.com/williamfiset/data-structures 🎥 Course created by William Fiset. Check out his YouTube channel: youtube.com/channel/UCD8yeTczadqdARzQUp29PJw ❤️ Try interactive Algorithms courses we love, right in your browser: scrimba.com/freeCodeCamp-Algorithms (Made possible by a grant from our friends at Scrimba) ⭐️ Course Contents ⭐️ ⌨️ () Abstract data types ⌨️ () Introduction to Big-O ⌨️ () Dynamic and Static Arrays ⌨️ () Dynamic Array Code ⌨️ () Linked Lists Introduction ⌨️ () Doubly Linked List Code ⌨️ () Stack Introduction ⌨️ () Stack Implementation ⌨️ () Stack Code ⌨️ () Queue Introduction ⌨️ () Queue Implementation ⌨️ () Queue Code ⌨️ () Priority Queue Introduction ⌨️ () Priority Queue Min Heaps and Max Heaps ⌨️ () Priority Queue Inserting Elements ⌨️ () Priority Queue Removing Elements ⌨️ () Priority Queue Code ⌨️ () Union Find Introduction ⌨️ () Union Find Kruskal's Algorithm ⌨️ () Union Find - Union and Find Operations ⌨️ () Union Find Path Compression ⌨️ () Union Find Code ⌨️ () Binary Search Tree Introduction ⌨️ () Binary Search Tree Insertion ⌨️ () Binary Search Tree Removal ⌨️ () Binary Search Tree Traversals ⌨️ () Binary Search Tree Code ⌨️ () Hash table hash function ⌨️ () Hash table separate chaining ⌨️ () Hash table separate chaining source code ⌨️ () Hash table open addressing ⌨️ () Hash table linear probing ⌨️ () Hash table quadratic probing ⌨️ () Hash table double hashing ⌨️ () Hash table open addressing removing ⌨️ () Hash table open addressing code ⌨️ () Fenwick Tree range queries ⌨️ () Fenwick Tree point updates ⌨️ () Fenwick Tree construction ⌨️ () Fenwick tree source code ⌨️ () Suffix Array introduction ⌨️ () Longest Common Prefix (LCP) array ⌨️ () Suffix array finding unique substrings ⌨️ () Longest common substring problem suffix array ⌨️ () Longest common substring problem suffix array part 2 ⌨️ () Longest Repeated Substring suffix array ⌨️ () Balanced binary search tree rotations ⌨️ () AVL tree insertion ⌨️ () AVL tree removals ⌨️ () AVL tree source code ⌨️ () Indexed Priority Queue | Data Structure ⌨️ () Indexed Priority Queue | Data Structure | Source Code -- Learn to

Why it's here

3 people recommend this

What people say. Recommended as a comprehensive, high-quality video course covering fundamental data structures and algorithms.

Moments people linked to

u/wsppanin r/C_Programming • Recommends

On “Good courses for Data Structure and Algorithms in C”

I loved this one, link to this video There is also link to this video link to this video link to this video link to this video

u/darmfingerin r/compsci • Recommends

On “Expanding Knowledge About Computer Science”

This is likely a decent start, as it covers most of the same topics you do in an algorithm sequence for CS degrees. A lot of it can be, and more importantly *is*, learned with just random online resources you find by googling questions you have. In terms of *what* to have questions about though, my CS program introduced them in roughly this order: 1. Arrays (strings also kind of fit here) 1. Sorting & Searching 2. Linked Lists 1. Stacks 2. Queues & Priority Queues 3. Binary Trees & Binary Search Trees 4. Heaps (Optional) 1. Heapsort 5. Hash Tables 6. Self-balancing BST's 1. Red-Black 2. AVL 7. Graphs 1. BFS / DFS 2. Spanning Trees 3. Pathfinding
3View on Reddit

u/Drach88in r/C_Programming • Recommends

On “How does a node contain itself in a linked list, and what's a practical example where linked lists are used?”

…d asymptotic analysis (which is how you abstractly determine the "speed" of an algorithm or operation). In a nutshell, stuff you're asking for really isn't a "how do I program in C" question, but rather it's a bit more academic exploration into abstract data types that's agnostic of any language. Here's a video introduction on data structures: [video It's a dense 8-hour video of content that could easily take an entire semester, so your mileage may vary.…