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

CS114

Basics of Algorithms

Barcelona Campus
Jul 29, 2024 - Aug 16, 2024
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.
Barcelona Campus
Jul 29, 2024 - Aug 16, 2024
Anier Velasco Sotomayor

Faculty

Anier Velasco Sotomayor

Lead at the ML Theory group at Cohere for AI Open Science community.

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

€2999

Fee for degree students

€1999

Skills you’ll learn

AlgorithmsComputer ScienceProblem solvingImplementation of AlgorithmsComplexity AnalysisMemory Consumption
OverviewCourse outlineCourse materialsPrerequisitesMethod & grading

Overview

This course will teach algorithms and data structures from various areas of computer science. The students will solve both theoretical and practical problems.

Learning highlights

  • Learn different basic algorithms
  • Analyze time complexity and memory consumption
  • Learn how to implement these algorithms efficiently

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

Session 1

Intro to Algorithms. Computational Models. Complexity. Basic sorting. Kadane’s algorithm.

Tuesday
2

Session 2

Prefix Sum. Binary Search.

Wednesday
3

Session 3

Amortized Complexity. Two pointers. More sorting algorithms. Sorting lower bound.

Thursday
4

Session 4

Data structures I: linked lists, stacks, queues, dynamically sized arrays.

Friday
5

Session 5

Data Structures II: Heaps, Binary Search Trees (without balancing).

Monday
6

Session 6

Basic Number Theory: prime factorization, gcd, modular arithmetic.

Tuesday
7

Session 7

String Matching: Rabin Karp’s, Polynomial Hashing.

Wednesday
8

Session 8

String Algorithms II: Trie, Hash Table.

Thursday
9

Session 9

Greedy thinking. Classical greedy problems.

Friday
10

Session 10

Brute-forcing: Backtracking. Bitmasks.

Monday
11

Session 11

Graph Algorithms I: DFS, BFS.

Tuesday
12

Session 12

Graph Algorithms II: Dijkstra’s, Floyd-Warshall’s.

Wednesday
13

Session 13

Dynamic Programming I.

Thursday
14

Session 14

Dynamic Programming II.

Friday
15

Session 15

Dynamic Programming III.

Methodology

There will be daily assignments, where students must solve coding problems and submit them to an automatic grading system. Each session will start with a seminar, where students will discuss the problems from the previous homework. Then, the session moves into a lecture where a new topic is discussed, including some problem-solving about that topic.

Grading

The final grade will be composed of the following criteria:
50% - Coding assignments
50% - Oral exposition
The only evaluation will be daily assignments. Each assignment will be evaluated the following way: 50%: The correctness and efficiency of the code (measured by passing all test-cases in the given memory and time limits of each problem). This means getting an Accepted verdict on the online grader. 50%: Their understanding of the solutions, meaning being able to explain the solution orally. This will be evaluated subjectively during the seminars.
Anier Velasco Sotomayor

Faculty

Anier Velasco Sotomayor

Lead at the ML Theory group at Cohere for AI Open Science community.

Anier started in computer science by doing programming Olympiads in high school, during which he obtained a gold medal in the Cuban National Olympiad and a bronze medal in the Ibero-American Olympiad in Informatics.

He has a BSc. in Computer Science and Data Science from Harbour.Space University. His main professional interest is Machine Learning Theory Research, and he’s an independent researcher.

See full profile

Apply for this course

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

Basics of Algorithms

by Anier Velasco Sotomayor

Total hours

45 Hours

Dates

Jul 29 - Aug 16, 2024

Fee for single course

€2999

Fee for degree students

€1999

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.