Algorithms and Data Structures in Python (Udemy.com)

A guide to implement the most up to date algorithms from scratch: arrays, linked lists, graph algorithms and sorting

Created by: Holczer Balazs

Produced in 2021

icon
What you will learn

  • Understand arrays and linked lists
  • Understand stacks and queues
  • Understand the differences between data structures and abstract data types
  • Understand tree like data structures (binary search trees)
  • Understand balances trees (AVL trees and red-black trees)
  • Understand graph traversing (BFS and DFS)
  • Understand shortest path algorithms such as Dijkstra's approach
  • Understand minimum spanning trees
  • Be able to develop your own algorithms
  • Have a good grasp of algorithmic thinking
  • Be able to detect and correct inefficient code snippets

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 0 / 100

icon
Course Description

This course is about data structures, algorithms and graphs. We are going to implement the problems in Python programming language.
I highly recommend typing out these data structures and algorithms several times on your own in order to get a good grasp of it.
So what are you going to learn in this course?
Section 1:
setting up the environmentdifferences between data structures and abstract data typesSection 2:
what is an array data structurearrays related interview questionslinked list data structure and its implementationSection 3:
stacks and queuesstacks and queues related interview questionsSection 4:
what are binary search treespractical applications of binary search treesSection 5:
problems with binary treesbalanced trees: AVL trees and red-black treesSection 6:
what are heapsheapsort algorithm overviewSection 7:
associative arrays and dictionarieshow to achieve O(1) constant running time with hashingternary search trees as associative arraysSection 8:
basic graph algorithmsbreadth-first and depth-first searchSection 9:
shortest path algorithmsDijkstra's algroithmBellman-Ford algorithmSection 10:
what are spanning treeswhat is the union-find data structure and how to use itKruskal's algorithm theory and implementation as wellSection 11:
sorting algorithmsbubble sort, selection sort and insertion sortquicksort and merge sortnon-comparison based sorting algorithmscounting sort and radix sortIn the first part of the course we are going to learn about basic data structures such as linked lists, stacks, queues, binary search trees,heaps and some advanced ones such as AVL trees and red-black trees.. The second part will be about graph algorithms such as spanning trees, shortest path algorithms and graph traversing. We will try to optimize each data structure as much as possible.
In each chapter I am going to talk about the theoretical background of each algorithm or data structure, then we are going to write the code step by step inPython.
Most of the advanced algorithms relies heavily on these topics so it is definitely worth understanding the basics. These principles can be used in several fields: in investment banking, artificial intelligence or electronic trading algorithms on the stock market. Research institutes use Python as a programming language in the main: there are a lot of library available for the public from machine learning to complex networks.
Thanks for joining the course, let's get started!
Who this course is for:
Beginner Python developers curious about graphs, algorithms and data structures

icon
Instructor Details

Holczer Balazs

Hi!
My name is Balazs Holczer. I am from Budapest, Hungary. I am qualified as a physicist. At the moment I am working as a simulation engineer at a multinational company. I have been interested in algorithms and data structures and its implementations especially in Java since university. Later on I got acquainted with machine learning techniques, artificial intelligence, numerical methods and recipes such as solving differential equations, linear algebra, interpolation and extrapolation. These things may prove to be very very important in several fields: software engineering, research and development or investment banking. I have a special addiction to quantitative models such as the Black-Scholes model, or the Merton-model.
Take a look at my website if you are interested in these topics!

icon
Reviews

0.0

0 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

No reviews yet. Be the first to review this course!