YoVDO

Data Structures and Algorithms in Python

Offered By: Jovian

Tags

Algorithms and Data Structures Courses Python Courses Algorithms Courses Data Structures Courses Sorting Algorithms Courses Stacks Courses Queues Courses Linked Lists Courses Recursion Courses Search Algorithms Courses

Course Description

Overview

A beginner-friendly introduction to common data structures (linked lists, stacks, queues, graphs) and algorithms (search, sorting, recursion, dynamic programming) in Python. This course will help you prepare for coding interviews and assessments. Enroll now to start learning.

  • Watch live hands-on coding-focused video tutorials
  • Practice coding with cloud Jupyter notebooks
  • Solve questions from real programming interviews
  • Earn a verified certificate of accomplishment

The course is self-paced and there are no deadlines. There are no prerequisites for this course.


Syllabus

Lesson 1 - Binary Search, Linked Lists and Complexity
  • Linear and Binary Search
  • Complexity and Big O Notation
  • Linked Lists using Python Classes
Assignment 1 - Binary Search Practice
  • Understand and solve a problem systematically
  • Implement linear search and analyze it
  • Optimize the solution using binary search
Lesson 2 - Binary Search Trees, Traversals and Recursion
  • Binary trees, traversals, and recursion
  • Binary search trees & common operations
  • Balanced binary trees and optimizations
Assignment 2 - Hash Tables and Python Dictionaries
  • Hash tables from scratch in Python
  • Handling collisions using linear probing
  • Replicating Python dictionaries
Lesson 3 - Sorting Algorithms and Divide & Conquer
  • Bubble sort and Insertion Sort
  • Merge sort using Divide & Conquer
  • Quicksort and average complexity
Assignment 3 - Divide and Conquer Practice
  • Implement polynomial multiplication
  • Optimize using divide and conquer
  • Analyze time and space complexity
Lesson 4 - Recursion and Dynamic Programming
  • Recursion and memoization
  • Subsequence and knapsack problems
  • Backtracking and pruning
Lesson 5 - Graph Algorithms (BFS, DFS & Shortest Paths)
  • Graphs, trees, and adjacency lists
  • Breadth-first and depth-first search
  • Shortest paths and directed graphs
Project - Step-by-Step Solution to a Programming Problem
  • Pick an interesting coding problem
  • Solve the problem step-by-step
  • Document and present the solution
Lesson 6 - Python Interview Questions, Tips & Advice
  • Practice questions and solutions
  • Tips for solving coding challenges
  • Advice for cracking coding interviews

Taught by

Aakash N S

Related Courses

Mastering Programming with MATLAB
Vanderbilt University via Coursera
Advanced Relational Database and SQL
Coursera Project Network via Coursera
算法设计与分析 Design and Analysis of Algorithms
Peking University via Coursera
算法基础 | Fundamental Algorithms
Peking University via edX
Animation with JavaScript and jQuery
University of California, Davis via Coursera