Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Photoshop Graphic Design Adobe Illustrator Drawing Digital Painting InDesign Character Design Figure Drawing Canva
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Meditation Personal Transformation Life Purpose Emotional Intelligence Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Google Analytics
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Modeling Data Analysis Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Blogging Freelancing Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Programming Languages Python

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
Rating: 4.5 out of 54.5 (699 ratings)
4,713 students
Created by Mashrur Hossain, Nathan House
Last updated 11/2019
English
English
30-Day Money-Back Guarantee

What you'll 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

Course content

5 sections • 102 lectures • 14h 36m total length

  • Preview01:50
  • Live help, office hours and Python e-book
    01:19
  • Preview05:42

  • [IMPORTANT] - Note to beginners, please don't skip this
    01:51
  • Section intro and overview
    05:55
  • Command line basics cheat sheet
    01:02
  • Download and install Python
    05:59
  • Setup Atom as text editor (setup used in this course)
    13:38
  • Exploring Jupyter Notebooks interface (optional)
    16:58

  • Preview07:51
  • Command line/Terminal basics
    06:27
  • Preview10:31
  • Strings basics - I
    2 questions
  • Let's get started!
    1 question
  • (IMPORTANT) A note on quizzes, coding exercises and assessment tests
    01:36
  • Strings: concatenation, indexing, slicing, python console
    14:13
  • Strings basics - II
    2 questions
  • String methods, functions and import statements
    17:20
  • Strings basics - III
    3 questions
  • Strings basics exercise
    1 question
  • Print formatting and special characters
    13:28
  • Print formatting basics
    3 questions
  • Numbers, math, type casting and input
    16:47
  • Math fun
    3 questions
  • Numbers practice
    1 question
  • Assessment test - Python basics: Text, numbers and print formatting
    00:29
  • Introduction to branching (if, elif, else) and conditionals
    12:16
  • Building if, elif, else blocks incrementally
    12:54
  • Branching practice
    1 question
  • Lists, dicts, sets and tuples - Intro to compound data types in Python
    11:02
  • Compound data types
    4 questions
  • Lists - an in-depth look 1
    12:06
  • Lists 1
    1 question
  • Lists practice
    1 question
  • Lists - an in-depth look 2
    11:18
  • Lists 2
    3 questions
  • More lists practice
    1 question
  • Dictionaries, sets and tuples
    18:23
  • Compound data types
    3 questions
  • Dictionaries practice
    1 question
  • Sets and Tuples practice
    1 question
  • Iterators, for loops, generators, list comprehension
    18:07
  • For loops, generators and list comprehension
    3 questions
  • Assessment test - Lists, dicts, tuples, sets and iteration
    00:33
  • While loops, enumerate, zip
    12:43
  • While loops and more generators
    3 questions
  • Functions - an introductory look
    13:01
  • Function basics - 1
    1 question
  • Functions - implementation step by step
    14:51
  • Functions basics - 2
    1 question
  • Functions - execution context, frames, mutable vs. immutable arguments in-depth
    14:19
  • Functions
    6 questions
  • Functions warm-up
    1 question
  • (Challenge exercise) Function and logic practice
    1 question
  • Assessment test - Functions, data types, iterators
    00:51
  • Classes and objects - an introductory look
    09:29
  • Classes intro
    2 questions
  • Building a custom Student class and intro to special methods
    11:58
  • Custom object intro
    1 question
  • Add some methods to the class
    06:48
  • Special methods and what they are
    12:33
  • Special methods
    4 questions
  • Reading from and writing to files
    12:22
  • Read/write ops
    1 question
  • Add read functionality and utilize special and static methods
    19:46
  • Inheritance, subclasses and complete example class
    14:46
  • Classes practice
    1 question
  • Bonus Python specific content (Optional)
    00:26
  • Python specifics - Lambda expressions
    01:59
  • Lambda expressions and map function
    10:38
  • Lambda expressions coding practice
    1 question
  • Generators - under the hood
    06:41
  • Build your own generators using yield
    10:05

  • Introduction to section 4 and overview of the material covered in it
    01:17
  • Bubble sort demonstration and complexity analysis
    05:39
  • Bubble sort implementation
    16:39
  • Selection sort demonstration and complexity analysis
    09:10
  • Selection sort implementation
    13:01
  • Complexity quiz
    1 question
  • Insertion sort demonstration and assignment handoff
    05:22
  • Insertion sort programmatic execution step by step
    02:20
  • Performance measures - deep dive with a programmatic view
    10:10
  • Performance measure - calculation
    1 question
  • O(nlog(n)) performance and algorithm prerequisites
    02:07
  • Analyze log(n), visualize the math behind it and how it relates to algorithms
    11:53
  • Preview13:35
  • Implement merge function - part 1
    06:31
  • Implement merge function - part 2
    06:50
  • Implement merge function - part 3
    04:59
  • A look at the recursive divide function
    05:49
  • In-depth look at execution context of recursive divide function
    11:47
  • Recursion mini-project 1 - Countdown timer
    05:47
  • Recursion mini-project 2 - Factorial
    06:45
  • Recursion mini-project 3 - Fibonacci series
    07:20
  • Complete merge sort algorithm and analyze updated execution context
    07:26
  • Algorithm complexity quiz
    4 questions
  • Quicksort demo
    05:08
  • Quicksort implementation
    07:28
  • Preview01:07
  • Project specs and runtime execution intro
    04:15
  • Project phase 1: Build random int list generator
    06:42
  • Project phase 2: Get input from user for size and range
    02:49
  • Project phase 3: Add functions, calculate and analyze runtime
    07:35
  • Project phase 4: Extract redundancies, create function and cleanup code
    09:48
  • Project phase 5: Add multiple run functionality and perform additional testing
    05:37

  • Introduction to section 5
    01:10
  • Intro to search - Linear, Bisection/Binary search
    05:56
  • Search
    2 questions
  • Bisection/Binary search - Iterative implementation
    14:27
  • Bisection search - recursive implementation
    09:19
  • Project handoff: Bringing it together
    05:20
  • Project conclusion walkthrough
    06:41
  • Hashmaps and O(1) search complexity
    07:58
  • Operation complexity
    1 question
  • Hash project 1: Define and set up class blueprint with __init__ and __str__
    06:47
  • Hash project 2: Set up insert and hashing functionality for data structure
    07:56
  • Hash project 3: Add update functionality
    09:17
  • Hash project 4: Build search method
    05:50
  • Project: Use hash structure in a practical exercise - Quote finder
    06:07
  • Project: Complete quote finder using hash table
    08:49
  • Intro to linear data structures - Linked Lists
    10:39
  • Linked list
    4 questions
  • Build a custom linked list
    15:50
  • Recursively reverse a linked list
    08:37
  • Preview11:56
  • Stacks and Queues
    3 questions
  • Introduction to Trees and Binary Search Trees
    14:06
  • Trees
    4 questions
  • Preview06:47
  • Traversal order
    3 questions
  • Build a Binary Search Tree from scratch - Insert
    13:07
  • BST from scratch - In-order traversal
    05:02
  • Traversal implementation
    1 question
  • BST from scratch - Search
    05:16
  • BST from scratch - Delete demo
    06:58
  • BST - Deleting leaf nodes
    13:10
  • BST - Deleting nodes with 1 child node
    08:44
  • BST - Deleting nodes with 2 children
    12:27
  • Binary Search Trees
    5 questions
  • Preview07:08
  • Project: Job Scheduler execution flow
    08:57
  • Project: Job Scheduler implementation tips and notes
    10:45
  • Thank you for taking the course and next steps
    03:03

Requirements

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

Description

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

  • Projects

  • 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!

Who 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

Featured review

Charles Chowa
Charles Chowa
97 courses
6 reviews
Rating: 5.0 out of 5a year ago
I've bee trying to learn python for a while now but most of the material I've come across is boring and does not help me remember the concepts. This course is exciting and I think it will help me retain what I'm learning.

Instructors

Mashrur Hossain
Technology Professional and Entrepreneur
Mashrur Hossain
  • 4.5 Instructor Rating
  • 16,965 Reviews
  • 114,978 Students
  • 13 Courses

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. 

Nathan House
Leading Cyber Security Expert
Nathan House
  • 4.6 Instructor Rating
  • 54,756 Reviews
  • 238,745 Students
  • 7 Courses

Winner of the AI "Cyber Security Educator of the Year 2020" award.

Nathan has over 24 years experience in cyber security where I have advised  some of largest companies in the world, assuring security on  multi-million and multi-billion pound projects. He is the CEO of Station X a cyber security consultancy. More recently he acted as  the lead security consultant on a number of the UKs mobile banking and  payment solutions helping secure to date over £71Bn in transactions.

My clients have included; BP, ExxonMobil, Shell, Vodafone, VISA, T-mobile, GSK, COOP Banking Group, Royal Bank of  Scotland, Natwest, Yorkshire bank, BG Group, BT, London 2012.

Over the years he have spoken at a number of security conferences,  developed free security tools, and discovered serious security  vulnerabilities in leading applications.

Qualifications and education

★ BSc. (Hons) Computing 'Networks & Communication' 1st Class Honors
★ SCF : SABSA Chartered Architect Foundation
★ CISSP : Certified Information Systems Security Professional
★ CISA : Certified Information Systems Auditor
★ CISM : Certified Information Security Manager
★ ISO 27001 Certified ISMS Lead Auditor
★ CEH : Certified Ethical Hacker
★ OSCP : Offensive Security Certified Professional





  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.