Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Data Structures and Algorithms in Python
Rating: 4.5 out of 5(639 ratings)
4,191 students

Data Structures and Algorithms in Python

Visualize the inner workings of data structures and algorithms, line by line, through comprehensive animations
Created byGlassbyte Team
Last updated 4/2024
English
English [Auto],Turkish [Auto],

What you'll learn

  • Understand how computers store and work with data
  • Analyze the space and memory utilization of any algorithm using the Big O Notation
  • Dive deep into the mechanisms of function execution and demystify the concept of Recursion
  • Implement from scratch the most common 9 Data Structures
  • Understand how the best known 8 sorting algorithms work
  • Learn the searching / traversing algorithms for trees and graphs
  • Improve your problem solving skills
  • Learn the behind the scenes of the basic data structures (arrays and hash maps)
  • Understand common programming patterns
  • Learn everything you need to know for the technical interview

Course content

13 sections80 lectures11h 40m total length
  • Course objectives, structure and more8:28

    Explore data structures and algorithms in Python, including recursion, Big-O notation, nine data structures, eight sorting algorithms, and learn through 12 chapters with visual animations.

  • How computers work12:47

    Learn how computers store and process data using bits and binary, encoding characters with ASCII and Unicode, and how transistors enable 32- and 64-bit architectures.

  • What are algorithms5:29

    Define algorithms as finite, well defined sequences of steps that take inputs and produce outputs. Emphasize correct order, efficiency, and practical steps from understanding the problem to testing and refactoring.

  • What are data structures6:02

    Explore how data structures organize data, relationships, and operations—from arrays and dictionaries to trees and graphs—and optimize access, updates, and problem solving.

Requirements

  • Basic coding concepts in any programming language
  • No previous data structures and algorithms knowledge needed
  • A computer to practice on (Windows, Mac or Linux)

Description

    Building reliable and highly performant software requires knowledge that goes beyond a certain programming language or framework. It requires a solid understanding of how data is organized in memory, how it can be manipulated, sorted or searched into. There’s a reason why all the big tech companies such as Google, Amazon or Netflix focus their technical interviews on those topics. Whether you do mobile apps, websites, games, machine learning or any other work that involves coding, you need a good grasp of Data Structures and Algorithms.

    Many self taught developers and aspiring engineers often feel they lack the knowledge when having to decide on the right data structure or the right approach for solving a problem. If you ever felt that way, this material is the right choice for you. This course packs months of Computer Science subject matter to get you on the same level of proficiency as someone with a Computer Science degree.


What sets us apart ?

    Every video begins with an in depth analysis of the topic at hand. At this stage we won’t write any code yet, but rather learn how to approach the problem, think of ways we could solve it and build a mental model of the solution.

    We then go on to code the algorithm step by step. But we don’t stop there. We take one or more examples and walk through the code line by line. And we mean that literally. You will see how the code runs from top to bottom and how data flows and changes during execution. We find this method the absolute best way to really understand the inner workings of an algorithm.

    We’ll also analyze the time performance and space utilization of every algorithm and method we write using the Big O Notation. We’ll talk about the strengths and weaknesses of each data structure and discuss their real world usage. Apart from all of that, you’ll also learn things like recursion, how computers work under the hood, problem solving techniques, common programming patterns and much more.


What does this course cover ?

  • How computers work under the hood

  • What a data structure is

  • What an algorithm is

  • Problem solving techniques

  • Big O Notation - how to analyze the time performance and space utilization of algorithms. This is done for every single function/algorithm we write.

  • Gain a deeper understanding of how code works

  • Recursion


Data Structures:

  • Arrays

  • Hash Tables

  • Singly Linked Lists

  • Doubly Linked Lists

  • Stacks

  • Queues

  • Binary Search Trees

  • Tree Traversal

  • Heaps

  • Graphs


Sorting Algorithms:

  • Insertion Sort

  • Selection Sort

  • Bubble Sort

  • Shell Sort

  • Heap Sort

  • Merge Sort

  • Quick Sort

  • Radix Sort

Thanks for considering, and I hope this course will help you in your journey. Happy learning!

Who this course is for:

  • Self-taught engineers with a career in a different field that want to switch to the tech industry
  • Anyone who is preparing for a technical interview
  • Engineers who want to build better tech fluency, land better roles, and push their career to new heights
  • Computer Science students who want to supplement their studies with alternative learning materials