Open Materials from Computer Science Center, Part 1

Computer Science Center is a joint initiative of the Computer Science Club at POMI RAS, JetBrains and the Yandex Data Analysis School .

The center exists to enable talented students and graduates to develop in areas of interest to them: Computer Science, Data Science or Software Engineering.

In this part, we post the records of our popular online courses on Stepik and recall that by April 11 a new set was opened at the CS center in St. Petersburg and Novosibirsk.




Mathematics


Introduction to mathematical analysis , Alexander Khrabrov.
The course introduces the basic concepts of mathematical analysis: sequences, limits, continuity, derivatives and integrals.

Mathematical analysis: part 1 and part 2 , Alexander Khrabrov.
The course will talk about sequences, limits, continuity, derivatives and integrals (indefinite and definite).

Educational program in discrete mathematics , Alexander Omelchenko.
Linear algebra, combinatorics, graph theory, discrete probability for students of IT specialties.

Probability Theory , Alexander Khrabrov.
The course introduces basic concepts: probability space, conditional probability, random variables, independence, mathematical expectation and dispersion. The law of large numbers and some versions of limit theorems are proved.

Fundamentals of graph theory , Alexander Omelchenko.
Basic concepts, trees and cycles, connectivity, matching, coloring of graphs and planar graphs for students of IT specialties.

Fundamentals of enumeration combinatorics , Alexander Omelchenko.
The main emphasis is on basic methods and approaches that can successfully solve combinatorial problems that arise in practice. To take the course, you need to be confident in the course of school mathematics.

Programming


Java Basic course , Alexey Vladykin.
Beginner course: compiling and running Java programs, language syntax, type system, the basics of object-oriented programming, the most important classes of the standard library.

C ++ Programming: Part 1 and Part 2 , Alexander Smal.
The course is designed for students who possess the syntax of at least one of the standard structural programming languages. Particular attention is paid to discussing the basic principles of programs and the process of compiling them. The second part includes advanced language features, templates, errors, multithreading.

Haskell Functional Programming: Part 1 and Part 2 , Denis Moskvin.
The first part of the course introduces the conceptual apparatus and programming methods characteristic of functional languages. And the second part is with new data types and type classes that simplify working with effects and allow you to design and use composite effects.

Computer science


Algorithms: theory and practice. Methods and Algorithms: theory and practice. Data Structures , Alexander Kulikov.
The course discusses the basic algorithmic methods: greedy, divide and conquer, dynamic programming. And in the second part - data structures that are most often used in practice: arrays, lists, queues, stacks, dynamic arrays, priority queues, systems of disjoint sets, hash tables, balanced trees.

Theoretical computer science: the complexity of computing , Alexander Shen.
Overview course: resolving trees, circuits of functional elements, propositional logic, enumeration tasks, class PSPACE, acceleration of enumeration.

System Programming


Introduction to computer architecture. Elements of operating systems , Kirill Krinkin.
As part of the review course, students and students will understand how programs are executed on modern computers from the very beginning, from the simplest logic circuits and microprocessors to modern multiprocessor and distributed systems.

Operating Systems , Mikhail Krinkin.
Memory management, scheduling and multitasking, thread synchronization tools, user space and system calls. The course assumes a basic knowledge of C or C ++.

Linux programming basics , Cyril Krinkin.
The course covers the basic tools and all the basic components: process management, interprocess interactions, network capabilities.

We wish you a good time!

All Articles