Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources

CS112BKK

Basics of Algorithms

Bangkok Campus
May 19, 2025 - Jun 06, 2025
By the end of this course, students will have a foundation on algorithms and data structures, allowing them to take on more advanced courses from the Computer Science programme.
Bangkok Campus
May 19, 2025 - Jun 06, 2025
Vsevolod Stepanov

Faculty

Vsevolod Stepanov

Senior Software Engineer at Databricks

Course length

3 weeks

Duration

3 hours
per day

Total hours

45 hours

Credits

4 ECTS

Language

English

Course type

Offline

Fee for single course

€1500

Fee for degree students

€750

Skills you’ll learn

Problem solvingImplementation of AlgorithmsBasics of AlgorithmsData StructuresAnalysing Pogram time Complexity and Memory consumption
OverviewCourse outlineCourse materialsPrerequisitesMethod & grading

Overview

This course covers some of the most important algorithms and data structures used in computer science and real-world applications. Students will learn how to implement these algorithms and apply them to a variety of problems.

Learning highlights

  • Learn how to analyse algorithm time complexity and memory usage.
  • Learn how to implement and apply algorithms to a range of problems.
  • Learn how to write efficient code.

Course outline

15 classes

Dive into the details of the course and get a sense of what each class will cover.
Monday
Tuesday
Wednesday
Thursday
Friday
Monday
1

Time and space complexity/ Binary search

O-notation, time and space complexity.

Function growth.

Binary search.

Real-number binary search.

Tuesday
2

Basic data structures I

Linked list.

Dynamic array.

Stack.

Queue.

Deque.

Wednesday
3

Basic data structures II

Hashtable.

Two pointers.

Prefix sum.

Thursday
4

Sorting algorithms I

Quadratic algorithms.

Counting sort.

Heap, heap sort.

Friday
5

Sorting algorithms II

Merge sort.

Quick sort.

Monday
6

Trees, Binary search trees

Basic operations: traverse, insert, find, delete.

No balancing.

Tuesday
7

String algorithms

Trie.

Polynomial hashing.

Wednesday
8

Midterm test

Midterm test.

Thursday
9

Graph algorithms I

Graph representation.

Depth-first search.

Topological sort.

Friday
10

Graph algorithms II

Breadth-first search.

Dijkstra.

Bellman-Ford.

Monday
11

Dynamic Programming I

Basic concepts.

Linear dynamic algorithms.

Tuesday
12

Dynamic Programming II

Games on graphs.

Longest increasing subsequence.

Dynamic on grids.

Wednesday
13

Dynamic Programming III

Floyd-Warshall algorithm.

Longest common subsequence.

Knapsack.

Thursday
14

Backtracking, brute force algorithms

N-queens.

Travelling salesman problem

Bitmasks, subset enumeration.

Friday
15

Final test

Final test.

Prerequisites

Knowledge of at least one programming language.

Methodology

Each session will consist of a lecture, during which students will learn new algorithms, followed by a practical session where they will apply these algorithms to a range of problems.

There will be daily assignments in which students will solve coding problems using an automated grading system.

Grading

The final grade will be composed of the following criteria:
40% - Assignments. Solutions to each problem are graded using an automated testing system, which checks each solution for correctness.
10% - Participation in practical sessions
50% - Midterm and Final test
Vsevolod Stepanov

Faculty

Vsevolod Stepanov

Senior Software Engineer at Databricks

Vsevolod Stepanov is a Senior Software engineer at Databricks. He holds a Bachelor's degree in Computer Science and Machine Learning, graduating from Saint Petersburg Academic University.

Since high school, he has been actively participating in programming competitions. In 2017, he advanced to ACM ICPC World Finals. Before Databricks, he also worked at Yandex, JetBrains and had an internship at Google.

See full profile

Apply for this course

Snap up your chance to enroll before all spaces fill up.

Basics of Algorithms

by Vsevolod Stepanov

Total hours

45 Hours

Dates

May 19 - Jun 06, 2025

Fee for single course

€1500

Fee for degree students

€750

How to secure your spot

Complete the form below to kickstart your application

Schedule your Harbour.Space interview

If successful, get ready to join us on campus

FAQ

Will I receive a certificate after completion?

Yes. Upon completion of the course, you will receive a certificate signed by the director of the program your course belonged to.

Do I need a visa?

This depends on your case. Please check with the Spanish or Thai consulate in your country of residence about visa requirements. We will do our part to provide you with the necessary documents, such as the Certificate of Enrollment.

Can I get a discount?

Yes. The easiest way to enroll in a course at a discounted price is to register for multiple courses. Registering for multiple courses will reduce the cost per individual course. Please ask the Admissions Office for more information about the other kinds of discounts we offer and what you can do to receive one.