Learning Data Structures & Algorithms in Python from Scratch
4.5 (323 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
10,505 students enrolled

Learning Data Structures & Algorithms in Python from Scratch

Understand, Learn and Implement Data Structures in Python
4.5 (323 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
10,505 students enrolled
Created by Syed Mohiuddin
Last updated 7/2020
English
English [Auto]
Current price: $86.99 Original price: $124.99 Discount: 30% off
23 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 21.5 hours on-demand video
  • 22 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Learn Data Structures, Abstract Data Types and their implementation in Python
  • Implementation of Searching Algorithms in Python
  • Implementation of Stacks, Queues, Linked List, Binary Trees, Heaps and Graphs in Python
  • Implementation of Binary Tree Traversal Techniques in Python
  • Graph traversals techniques ie Depth First Search and Breadth-First Search in Python
  • Implementation of Sorting Algorithms in Python
  • Enhance Analytical Skill and efficiently use searching and sorting algorithms in real applications
Course content
Expand all 169 lectures 21:24:19
+ Python Basics and Fundamentals
13 lectures 02:04:49
First Python Program, Data Types and Variables
15:13
Integers & Float Data Types
02:18
Strings Data Types
05:12
Boolean & None Data Types
06:06
Arithmetic Operators & Integer Division
09:27
Relational or Comparison Operators
09:58
Logical Operators
08:26
input() Function
07:13
print() Function
05:06
if, if-else and elif Statements
22:27
range() Function
05:43
while() & for() Loops
19:10
break & continue Statements
08:30
+ Lists & Dictionaries in Python
5 lectures 28:06
What are Lists?
08:00
Using Lists and List Indexing
05:08
Membership & Identity Operators
02:19
What are Dictionaries?
04:26
Using Dictionaries
08:13
+ Functions in Python
2 lectures 12:58
What are Functions?
08:10
Writing Functions in Python?
04:48
+ Modules and Exceptions in Python
3 lectures 21:04
Importing Modules in Python
07:32
Creating Your Own Modules
06:37
Exception Handling
06:55
+ Object Oriented Programming in Python
6 lectures 35:21
Fundamentals of Object Oriented Programming
02:49
Defining Classes & Creating Objects
12:44
More on __init__ Method (Constructor)
03:06
Understanding self Parameter
03:11
Static and Local Variables
06:49
Inner Classes
06:42
+ Data Structures & Analysis of Algorithms
5 lectures 58:13
Order of Growth
03:34
Analysis of Algorithms - Space Complexity
05:36
Abstract Data Type (ADT)
09:49
Quiz
2 questions
+ Recursion and Analysis of Recursive Functions
11 lectures 01:46:44
How Recursion Works ?
12:16
Iteration vs recursion lets Implement
06:54
Time Complexity of Recursion - Recurrence Relation
17:59
Recurrence Relation - Another example
08:39
Types of Recursion - Tail and Head Recursion
09:35
Types of Recursion - Tree Recursion
23:30
Types of Recursion - Indirect Recursion
03:25
Sum of N Natural Numbers
08:43
Lets Implement Sum of N Numbers
04:10
Factorial
06:52
Lets Implement Factorial
04:41
+ Searching Algorithms
6 lectures 39:21
Binary Search Iterative Algorithm
11:18
Binary Search Implementation in Python
03:15
Binary Search Recursive Algorithm
06:41
Binary Search using Recursion in Python
02:40
Requirements
  • Prior knowledge of Programming any high level language
  • Basic knowledge of Python Programming
Description

This course will help you in better understanding of basics of Data Structures and how algorithms are implemented in high level programming language. This course consists of lectures on data structures and algorithms which covers the computer science theory + implementation of data structures in python language. This course will also help students to face interviews at the top technology companies. This course is like having personal tutors to teach you about data structures and algorithms.


There’s tons of concepts and content in this course. To begin the course:

  • We have a discussion of why we need data structures.

  • Then we move on to discuss Analysis of Algorithms ie Time and Space complexity, though the Asymptotic Notation ie Big O, Omega and Theta are taken up at the end of this course so that you do not get confused and concentrate on understanding the concepts of data structures.

  • We have programming environment setup to make sure you have all the software you need in order to get the hands on experience in implementing Data structures and algorithms.


Then we get to the essence of the course; algorithms and data structures. Each of the specific algorithms and data structures is divided into two sections. Theory lectures and implementation of those concepts in Python. We then move on to learn:

  1. Recursion

  2. Stacks, Queues, Deques

  3. Linked List

  4. Trees & Binary Trees

  5. Binary Search Trees

  6. Priority Queues and Heaps

  7. Graphs & Graph Traversal Algorithms

  8. Searching and Sorting algorithms


Again, each of these sections includes theory lectures covering data structures & their Abstract Data Types and/or algorithms. Plus the implementation of these topics in Python.


Who this course is for:
  • Students who want to have better understanding of Data Structures
  • Python programmers curious about Data Structures
  • IT Professional experimenting implementation of Data Structures in Python