Library

Course: Easy to Advanced Data Structures

Easy to Advanced Data Structures

  • Life Time Access
  • Certificate on Completion
  • Access on Android and iOS App
About this Course

Data structures are amongst the most fundamental ingredients in the recipe for creating efficient algorithms and good software design. Knowledge of how to create and design good data structures is an essential skill required in becoming an exemplary programmer. This course will teach you how to master the fundamental ideas surrounding data structures.

Learn and master the most common data structures in this comprehensive course:

  • Static and dynamic arrays
  • Singly and doubly linked lists
  • Stacks
  • Queues
  • Heaps/Priority Queues
  • Binary Trees/Binary Search Trees
  • Union find/Disjoint Set
  • Hash tables
  • Fenwick trees
  • AVL trees

Course contents

This course provides you with high quality animated videos explaining a multitude of data structures and how they are represented 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 of that particular data structure. I will also be posting various coding exercises and multiple choice questions to ensure that you get some hands on experience.

Who is the target audience?

  • Individuals hungry for new knowledge
  • Students who want a fundamental understanding of data structures
Basic knowledge
  • Basic computer science knowledge
What you will learn
  • Mature understanding of data structures
  • Algorithms associated with data structures
  • Dynamic arrays
  • Singly and doubly linked list
  • Queues & Stacks
  • Binary Trees and Binary search trees
  • Heaps & Priority queues
  • Union find/Disjoint set
  • Hash table/Associative array
  • Fenwick tree/Binary indexed tree
Curriculum
Number of Lecture: 43
Total Duration: 06:59:23
Introduction
  • Abstract data types Introduction  
  • Understanding time/space complexity  
Static and dynamic arrays
  • Static and dynamic arrays  
  • Dynamic array source code  
Linked lists
  • Linked list introduction  
  • Doubly linked list source code  
Stacks
  • Understanding stacks  
  • Stack implementation details  
  • Stack source code  
Queues
  • Understanding queues  
  • Breadth first search and queue implementation  
  • Queue source code  
Priority queues
  • What is a priority queue?  
  • Min heaps and Max heaps  
  • Priority queue inserting elements  
  • Priority queue source code  
Union find/Disjoint set
  • Union find introduction  
  • Kruskal's Algorithm  
  • Union and find operations  
  • Path compression  
  • Union find source code  
Binary search trees
  • Introduction to binary trees  
  • Binary search tree insertions  
  • Binary search tree removals  
  • Binary tree traversals  
  • Binary search tree source code  
Hash tables
  • Hash table hash functions  
  • 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 removing key-value pairs  
  • Hash table open addressing source code  
Fenwick tree/Binary indexed tree
  • Fenwick tree range queries  
  • Fenwick tree point updates  
  • Fenwick tree construction  
  • Fenwick tree source code  
AVL Tree
  • Tree rotations  
  • AVL tree insertions  
  • AVL tree removals  
  • AVL tree source code  
Reviews (10)
3 months before
Nice
3 months before
very useful
2 months before
2 months before
Very very useful and helpful for beginners.. before I use to study the books but couldnt understand them clearly but in-voice over tutorial i can understand it and concentrate in it clearly.. its like rhymes for kids which they can remember clearly.thanks for William for starting this portal for beginners.
2 months before
2 months before
2 months before
It would be much more better if u also teach in other programming languages. Course is clean and interesting
1 month before
It is good course but instructor speed is fast
1 month before
Best free courses
3 weeks before