Algorithms and data structures for developers - free course from Skillbox, training, Date: November 29, 2023.
Miscellaneous / / November 30, 2023
Junior developers
You will learn to apply algorithms and create new ones, improve your professional level and be able to get a job in a large company.
Middle developers
You will be able to participate in complex projects involving highly loaded systems and processing large volumes of data.
For those preparing for the Olympics
You will master basic algorithms and data structures and be able to apply them to solve Olympiad problems.
Introduction to Algorithms
Get acquainted with the structure of the course, the concepts of algorithm and data structure, as well as the simplest algorithms on arrays.
Binary Search Algorithm
You will learn what binary search is, how it works, why and how much more effective it is than simple brute-force search, as well as its capabilities and subtleties.
Hash tables and hash functions
Study the principles of constructing hash tables and the features of working with them, get acquainted with the concept of a hash function, the problem of their collisions, as well as the solution to this problem.
Linked lists
You will learn the principles by which singly linked and doubly linked lists are constructed and how they work, why they are better and why they are worse than arrays.
Stack and Queue
Get acquainted with data structures - stack, queue and deck (doubly connected queue), learn the principles of their construction and operation.
Sorting algorithms
Learn about the principles and features of popular sorting algorithms - SelectionSort, QuickSort and MergeSort. Learn to evaluate the complexity of algorithms in terms of time and memory using their examples.
Recursive Algorithms
Learn to create and apply recursive algorithms, and become familiar with the principles of estimating their complexity.
Algorithm complexity and O-notation
You will learn what O-notation is, learn to evaluate the complexity of algorithms and distinguish them by memory and time.
Greedy Algorithms
Get acquainted with the principles of operation of greedy algorithms using the example of iterations with two and three indexes, as well as algorithms on strings.
Trees. Binary Search Trees
You will learn about the principles of operation and features of trees using the example of a binary tree. Get acquainted with the algorithms for searching, adding and removing elements from it.
Trees. Traversal in width and depth
Get to know the complex types of trees that are used in practice. Find out how they work and learn how to work with them.
Heap
Learn the basic principles of tree balancing. Become familiar with the heap data structure.
Bor. Suffix tree. B-tree
Learn what suffix trees are and how they are used in search and compression algorithms.
Graphs and recursive algorithms
You will learn what graphs are, what an edge, a vertex, a weighted and directed graph are.
Topological sorting and non-obvious applications of graphs
Learn to solve problems of traversing breadth-first and depth-first graphs and finding the shortest path. Get acquainted with the principles of topological sorting and other problems that are solved on graphs.
Information compression algorithms
Learn lossless compression algorithms. You will learn the principles by which modern archiving algorithms work and what algorithms are used to compress audio files and images.
Bit Algorithms
Learn to work with basic bit operations and algorithms that are often used in practice. Learn masks and bit indexes.
Hash algorithms. Cryptographic algorithms.
Learn the principles of operation of the CRC checksum algorithm and the MD5 and SHA hashing algorithms. Learn about symmetric and asymmetric encryption algorithms, as well as the popular RSA and AES algorithms.
The purpose of this course is to introduce students to the theory and practice of deep learning and neural networks in an interactive format. During the course you will be offered several practical tasks. The last assignment is the final practical project. Based on the results of the course, a certificate of completion will be issued, which provides benefits for admission to bachelor's and master's programs at the Faculty of Faculty of Physics and Technology of the Moscow Institute of Physics and Technology. The basic stream is intended for those who are taking their first steps in Data Science. A significant part of the course is devoted to the Python language, data analysis libraries and mathematics for Data Science. in the second half we will talk about the general theory of neural networks, as well as about neural networks in computer vision
4
for free