date_range Débute le 16 octobre 2018
event_note Se termine le 16 décembre 2018
list 7 séquences
assignment Niveau : Introductif
chat_bubble_outline Langue : Anglais
card_giftcard 16.8 points
Envie de partager ce MOOC dans votre entreprise ?
My Mooc
For Business
- /5
Avis de la communauté
0 avis

Les infos clés

credit_card Formation gratuite
verified_user Certification payante
timer 28 heures de cours

En résumé

Want to be the programmer hot tech companies are looking for?

Take your programming skills to the next level and prove your excellence by learning how to succeed in programming competitions.

Besides improving your knowledge of algorithms and programming languages, you’ll gain unique experience in problem solving, thinking outside the box and meeting tough deadlines – all essential for boosting your value as a programmer and securing a coveted job in Silicon Valley (should you want one).

This computer science course is an introduction to competitive programming developed by ITMO University, the leading expert in IT and the only 7-time world champion of the Association for Computing Machinery - International Collegiate Programming Contest (ACM ICPC), the world's most prestigious programming contest.

You will learn all you need to know about the variety of programming competitions that exist, as well as basic algorithms and data structures necessary to succeed in the most popular of them.

  • The benefits of participating in programming competitions
  • The algorithms and approaches you need to master the world of competitions
  • Ways of self-training for further progress

more_horiz Lire plus
more_horiz Lire moins
report_problem

Les prérequis

Basic knowledge of any common programming language (C++, Java, Python)

dns

Le programme

Week 1: Welcome to competitive programming
Exploring different kinds of programming competitions and benefits of participating, as well as typical rules and challenges. An overview of algorithmic programming competitions. An introduction to community resources and online contests. Week 2: Computational complexity and linear data structures
An overview of computational complexity (Big O notation). Exploring linear data structures (array, list, stack, queue): operations, complexity, implementation and examples. Week 3: Sorting and search algorithms 1
An overview of sorting algorithms: insertion sort, quick sort, merge sort. Week 4: Sorting and search algorithms 2
Theoretical limitations and practical guidelines for sorting. Binary search. Binary heaps and priority queues. Week 5: Graph theory 1
Definition of graphs and examples of graph problems. Various ways of storing graphs in memory. Depth first search and its applications. Dynamic programming. Week 6: Graph theory 2
Breadth first search. Eulerian and Hamiltonian paths and tours. Shortest paths. Week 7: Final Exam
Solving a set of problems in limited time just like in a real programming competition.
record_voice_over

Les intervenants

Maxim Buzdalov
Associate Professor, Chair of Computer Technologies
ITMO University

Pavel Krotkov
Programmer, Chair of Computer Technology
ITMO University

Daria Yakovleva
Assistant, Computer Technology Department
ITMO University

assistant

La plateforme

EdX est une plateforme d'apprentissage en ligne (dite FLOT ou MOOC). Elle héberge et met gratuitement à disposition des cours en ligne de niveau universitaire à travers le monde entier. Elle mène également des recherches sur l'apprentissage en ligne et la façon dont les utilisateurs utilisent celle-ci. Elle est à but non lucratif et la plateforme utilise un logiciel open source.

EdX a été fondée par le Massachusetts Institute of Technology et par l'université Harvard en mai 2012. En 2014, environ 50 écoles, associations et organisations internationales offrent ou projettent d'offrir des cours sur EdX. En juillet 2014, elle avait plus de 2,5 millions d'utilisateurs suivant plus de 200 cours en ligne.

Les deux universités américaines qui financent la plateforme ont investi 60 millions USD dans son développement. La plateforme France Université Numérique utilise la technologie openedX, supportée par Google.

Vous êtes le concepteur de ce MOOC ?
Quelle note donnez-vous à cette ressource ?
Contenu
0/5
Plateforme
0/5
Animation
0/5