• Post category:StudyBullet-13
  • Reading time:8 mins read


Understand and Implement data structures from absolute scratch in python. Learn about computational complexity.

What you will learn

Understand the most important data structures

Implement Data structures from scratch in python

Analyze algorithms using the big O notation

Reverse a linked list

Understand and implement stacks, queues, trees, linked lists and graphs from scratch

Description

You’ll learn about the most important and basic data structures that every veteran programmer knows about in detail. By the end of the course, you’ll be able to implement these from absolute scratch.

The course is designed to help the students write their own code. Each module has explanation parts and implementation parts, you’re encouraged to implement an explained topic on your own.

Data Structures covered in the course.

  • Singly Linked Lists
  • Doubly Linked Lists
  • Stacks
  • Queues
  • Binary Search Trees
  • Graphs
  • Computational Complexity

Algorithms

  • Reversing a linked list
  • Recursive and iterative tree traversal
  • Breadth First Search
  • Depth First Search

Analysis


Get Instant Notification of New Courses on our Telegram channel.


  • Big O notation

Who is this course for?

Many people learn programming and are told to learn data structures and algorithms to pass coding interviews and get jobs. This course is designed for an individual who has some python programming knowledge and wants to get better at it by learning data structures. Even if you have no python experience but know some other programming language, this can be a great chance to learn python. For people who don’t know python, this provides programming problems to get better at python.

How the course is designed

The course is designed with 7 major modules. We go from installing python, to setting up jupyter notebook to understanding and implementing data structures from scratch. We also visualize computational complexity of different operations we write for these data structures in the final section on computational complexity.

What will you get out of it

  • Better understanding of data structures.
  • More tools at your disposal for solving programming problems.
  • Ability to implement data structures from scratch in python.
  • Opportunity to practice python.
English
language

Content

Introduction

What this course is about
How to take the course effectively

Environment Setup

Setting up your environment

Stacks and Queues

Section Introduction
Stack
Stack Implementation
Valid Brackets Problem
Valid Brackets Problem solution
Queues
Queue Implementation
Section Conclusion

Singly Linked Lists

Section Introduction
Introduction to Linked Lists
Singly Linked List Implementation
Singly Linked List: Push Method
Singly Linked List: Unshift Method
Singly Linked List: Shift Method
Singly Linked List Traversal
Singly Linked List Pop
Singly Linked List Insert
Singly Linked List Remove
Singly Linked List Reverse
Singly Linked Lists: Conclusion

Doubly Linked Lists

Section Introduction
Doubly Linked Lists: Introduction
Doubly Linked Lists: Implementation
Doubly Linked Lists: Push Method
Doubly Linked Lists: Unshift Method
Doubly Linked Lists: Shift Method
Doubly Linked Lists: Pop Method
Doubly Linked Lists: Insert Method
Doubly Linked Lists: Remove
Doubly Linked Lists: Reverse
Doubly Linked Lists: Conclusion

Binary Search Trees

Section Introduction
Binary Search Trees: Introduction
Binary Search Trees: Implementation
Binary Search Trees: Insertion Introduction
Binary Search Trees: Insertion Implementation (Iterative)
Binary Search Trees: Insertion Implementation (Recursive)
Binary Search Trees: Preorder Traversal (Part 1)
Binary Search Trees: Preorder Traversal Part 2
Binary Search Trees: Inorder Traversal
Binary Search Trees: Postorder Traversal
Binary Search Trees: Delete Explanation
Binary Search Trees: Delete Implementation
Binary Search Trees: Search
Binary Search Trees: Conclusion

Graphs

Section Introduction
Graphs: The Basics
Graphs: Implementation
Graphs: Breadth First Search
Graphs: Depth First Search
Graphs: Conclusion

Computational Complexity

Section Introduction
Big O Notation: Introduction
Big O: Arrays
Big O: Stacks and Queues
Big O: Linked Lists
Big O: Binary Search Trees
Big O: Graphs
Big O: Conclusion

Course Conclusion

Course Conclusion and what’s next