Disclosure: when you buy through links on our site, we may earn an affiliate commission.

Python 3: Project-based Python, Algorithms, Data Structures

Learn programming with Python 3; visualize Algorithms and Data Structures and implement them in projects with Python
(826 reviews)
5,373 students
Created by


CourseMarks Score®







Platform: Udemy
Video: 14h 36m
Language: English
Next start: On Demand

Table of contents


Join the most comprehensive and beginner friendly course on learning to code with Python – one of the top programming languages in the world – and using it to build Algorithms and Data Structures with Projects utilizing them from scratch.
You will get:
1) 14+ hours of animation heavy instructional video
2) 14 coding exercises using Udemy’s internal python coding environment
3) Quizzes to test your understanding at every step
4) 80+ Python scripts with practice exercises and lecture notes
5) Live help channel and designated office hours with the instructor
6) Multiple assessment tests to test your progress
7) A free Python e-book
and much, much more!
This course is truly one of a kind and focused solely on your learning.
Check out some of the amazing reviews it’s receiving:
From Ryan – “I’ve only had it for one day and it’s been absolutely incredible. Wonderful instructor that does a terrific job of explaining complex topics. I’m not even a quarter of the way in and I already feel that I’ve gotten exponentially more than what I paid.”
From Jason – “Great course, the instructor is clearly well-versed with Python programming and gives very clear instruction. I particularly found the algorithms and data structures section to be valuable. Strongly recommend this course, the best Python programming course I’ve taken by a significant margin.”
From Rob – “As a software engineer that needs to get up to speed on some Python for a data-science project, this was perfect. It’s in-depth where it needs to be, clear, and very well put together.”
I will walk you step-by-step through the fascinating world of Python programming using visualizations of programs as they execute, algorithms as they run and data structures as they are constructed. Nothing is left to the imagination, we’ll see it all and then build it all.
Since it caters to a broad spectrum of students, the course is split in two parts, part 1 focusing on the Python programming language and part 2 focusing on Algorithms, Data Structures, Performance Analysis and larger scale projects. Details below:
Part 1: Python and programming fundamentals
•Text – Strings
•Numbers – Ints and Floats
•Execution flow control – Branching with if/elif/else
•Compound data types – Lists, Dictionaries, Tuples, Sets
•Iterables and Iteration with generators, for and while loops and more!
•Functions, execution context and frames, building custom functions
•List comprehension
•Lambda expressions
•Generators and creating your own generators with yield
•Objects and building classes, methods, special methods
•Reading from and writing to files using context managers
•Visualization with each topic and more!
Part 2: Algorithms, Data Structures and Performance Analysis
•Sorting algorithms (basic) – Bubble sort, Selection sort, Insertion sort
•Sorting algorithms (advanced) – Merge sort, Quick sort
•Big O notation, complexity analysis, divide and conquer, math visualizations
•Recursion in-depth with examples
•Searching algorithms – Bisection search, hashing
•Data Structures with Linked lists, Stacks, Queues, Trees, Binary Search Trees
•Operations with Data structures – insert, search, update, delete
•Multiple projects with increasing level of complexity that tie the concepts together
•Visualizations of every algorithm, data structure and operations and more!
So whether you are interested in learning the top programming language in the world in-depth
OR interested in learning the fundamental Algorithms, Data Structures and performance analysis that make up the core foundational skillset of every accomplished programmer/designer or software architect
OR you are looking to ace your next technical interview 
OR all 3 above – This is the course for you!
And on top of that, it comes with a 30 day money back guarantee. If you are not satisfied in any way, you will not only get your money back but you also get to keep the free e-book and tons of downloadable practice exercises and code just for trying it out!
So what are you waiting for? Learn to code with Python while building projects and implementing algorithms and data structures, and gain a core competency in Computer Science that will advance your career and increase your knowledge in the most effective way!

You will learn

✓ Learn Python 3 from scratch, in-depth
✓ Understand the fundamentals of programming languages
✓ Learn to visualize Algorithms, Data Structures, Program Execution and Information flow
✓ Learn to use Python to build projects
✓ Algorithms (basic to advanced) – sort, search, insert, delete
✓ Data Structures – elementary to complex
✓ Become proficient in technical interview topics


• Access to a computer (Mac, Windows, Linux) with internet connection

This course is for

• Beginners who have never programmed before
• Programmers switching to Python
• Job interview candidates looking to understand the subject matter behind technical interview questions
• Intermediate and advanced programmers looking to understand algorithms and data structures
• Anyone looking to understand the foundations of computer science
• Anyone looking to learn how to visualize programs and information flow
Technology Professional and Entrepreneur
Hi, I’m Mashrur, I’m a full-time programming instructor specializing in programming fundamentals, web application development, machine learning and cyber security. I have been a technology professional for over a decade and have degrees in Computer Science and Economics.
My niche is building comprehensive career focused technology courses for students entering new/complex and challenging fields in today’s technology space. This is a nice segway for me, since my real passion is building and tinkering with programming languages. I love everything to do with development and learning about new tools and technologies. My favorite languages are Python and Ruby on Rails, and my favorite tech fields are web app development, machine learning and data-analytics (which is where Ruby on Rails and Python fall into place nicely). I encourage my students to focus on these technologies as well.
In my past (corporate) life, I worked with Enterprise Software Systems with roles played in analysis, development, management and training. I led projects using both agile and waterfall methodologies and thus am well versed in the inner workings of the software development and delivery world. 
During my time in corporate America, I realized how much I enjoyed training new hires and new team members and helping them succeed. I dedicated a good amount of time over 7 years on-boarding new analysts and developers and then worked with them to build and maintain systems which put me in a unique position to know and understand what new entrants to a field need in order to succeed. I strongly believe in focusing on fundamentals and practice; and not in shortcuts or gimmicks. 
So join me for my comprehensive career-focused technology courses as I guide you through the world of web application development, machine learning and cyber security using Python, Ruby on Rails, MySQL and others and bringing your ideas and passions to life. 
Browse all courses by on Coursemarks.
Platform: Udemy
Video: 14h 36m
Language: English
Next start: On Demand

Students are also interested in