CS526 Advanced Algorithms and Data Structures


CS526 Advanced Algorithms and Data Structures

Syllabus   |  International University of Sarajevo  -  Last Update on Mar 03, 2026

Referencing Curricula

HOSTED BY

Computer Sciences and Engineering

Academic Year
2020 - 2021
Semester
Spring
Course Code
CS526
Weekly Hours
3 Teaching + 2 Practice
ECTS
6
Prerequisites
None
Teaching Mode Delivery
Online
Prerequisite For
-
Teaching Mode Delivery Notes
-
Cycle
II Cycle
Prof. Jane Doe

TBA

Course Lecturer

Position
-
Email
Phone
033 957
Assistant(s)
N/A
Assistant E-mail

Course Objectives

The objective of the course is to equip students with the modern algorithmic toolbox for tackling algorithmic problems that massive-data systems face today. Most traditional algorithms and data structures have been designed having in mind that all data can fit into computer's memory. Today, with large amounts of data and distributed systems, this is far from true. This course will teach how to transform the existing and design new data structures that are useful in the context of data-intensive applications. The main themes of the course include: hash-based sketches, real-time analytics, and storage and external memory algorithms and data structures.

Learning Outcomes

After successful completion of the course, the student will be able to:

1
Be aware of challenges presented by large data
2
Decide on the appropriate data structure for a given context, and be able to implement it and tune it to a particular application.
3
Be able to choose the right data analysis algorithm and know how to use the tools that implement those algorithms
4
Critically evaluate systems based on mathematical analysis learned in this course
5
Improve real-life systems by using sophisticated algorithms/data structures that make the system run fast.

Course Materials

Required Textbook

There is no single book (yet) that unites all the themes of the subject. Students will be given lecture notes, papers, and there are some books that cover parts of particular pieces of syllabus. If you are interested in the developing book addressing exactly this subject, it is available online for purchase and contains about half of the semester material at this point: https://www.manning.com/books/algorithms-and-data-structures-for-massive-datasets

Additional Literature

Teaching Methods

Lecture
Mini-projects

Weekly Topics

This weekly planning is subject to change with advance notice.
Week Topic Readings / References
1 Introduction, course logistics Lecture notes
2 Why is Massive Data so Challenging for Systems Today? Lecture notes
3 Review of dictionaries, hashing, consistent hashing Lecture notes
4 Locality-sensitive hashing Lecture notes
5 Testing Membership: Bloom filters Lecture notes
6 Bloom filter alternatives: Quotient filter and cuckoo filter Lecture notes
7 Estimating frequency: Count-min Sketch Lecture notes
8 Estimating cardinality: HyperLogLog Lecture notes
9 Project 1 presentations Lecture notes
10 Mid-term Lecture notes
11 On-disk Storage, Retrieval and Sorting: Introduction to the External-Memory Model Lecture notes
12 Data Structures for Large databases: B-trees and LSM-trees Lecture notes
13 Sorting and batched problems on disk Lecture notes
14 Guest lecture: Data streams Lecture notes
15 Project 2 presentations (Final) Lecture notes

Course Schedule (All Sections)

Course Schedules with all sections will be available here soon.

Office Hours & Room

Course Office hours will be available here soon.

Assessment Methods and Criteria

Assessment Components

30%x1
Final Exam (Project 2)
AI: Not Allowed

Alignment with Learning Outcomes : 

40%x1
Mid-Term
AI: Not Allowed

Alignment with Learning Outcomes : 

30%x1
Mini-project 1
AI: Not Allowed

Alignment with Learning Outcomes : 

IUS Grading System

Grading Scale IUS Grading System IUS Coeff. Letter (B&H) Numerical (B&H)
0 - 44 F 0 F 5
45 - 54 E 1
55 - 64 C 2 E 6
65 - 69 C+ 2.3 D 7
70 -74 B- 2.7
75 - 79 B 3 C 8
80 - 84 B+ 3.3
85 - 94 A- 3.7 B 9
95 - 100 A 4 A 10

Late Work Policy

Information about late submission policies will be shared during class and posted in this section. Please check back for official guidelines.

ECTS Credit Calculation

📚 Student Workload

This 6 ECTS credit course corresponds to 150 hours of total student workload, distributed as follows:

Final Exam (Project)

75 hours ⏳ (15 week × 5 h)

Mid-term

48 hours ⏳ (8 week × 6 h)

Mini-projects

27 hours ⏳ (3 week × 9 h)

150 Total Workload Hours

6 ECTS Credits


Course Policies

Academic Integrity

All work submitted must be your own. Plagiarism, cheating, or any form of academic dishonesty will result in disciplinary action according to university policies. When in doubt about citation practices, consult the instructor.

Attendance Policy

Students are expected to adhere to the attendance requirements as outlined in the International University of Sarajevo Study Rules and Regulations. Excessive absences, whether excused or unexcused, may impact academic performance and eligibility for assessment. Mandatory sessions (e.g., labs, workshops) require attendance unless formally exempted. For detailed policies on absences, documentation, and penalties, please refer to the official university regulations.

Technology & AI Policy

Laptops/tablets may be used for note-taking only during lectures. Phones should be silenced and put away during all class sessions. Audio/video recording requires prior permission from the instructor.

Artificial Intelligence (AI) Usage: The use of AI tools (e.g., ChatGPT, Copilot, Gemini) varies by assessment component. Please refer to the AI usage indicator next to each assessment item in the Assessment Methods and Criteria section above. Submitting AI-generated content as your own work, where AI is not explicitly allowed, constitutes an academic integrity violation.

Communication Policy

All course-related communication should occur through official university channels (institutional email or SIS). Emails should include [CS526] in the subject line.

Academic Quality Assurance Policy

Course Academic Quality Assurance is achieved through Semester Student Survey. At the end of each academic year, the institution of higher education is obliged to evaluate work of the academic staff, or the success of realization of the curricula.

More info

Learning Tips

Engage Actively

Be prepared to contribute thoughtfully during class discussions, labs, or collaborative work. Active participation deepens understanding and encourages critical thinking.

Read and Review Purposefully

Complete assigned readings or prep materials before class. Take notes, highlight key ideas, and jot down questions. Aim to grasp core concepts and their applications—not just facts.

Think Critically in Assignments

Use course frameworks or methodologies to analyze problems, case studies, or projects. Begin early to allow time for reflection and refinement. Seek feedback to improve your work.

Ask Questions Early

Don’t hesitate to reach out when something is unclear. Use office hours, discussion boards, or peer networks to clarify concepts and stay on track.

Syllabus Last Updated on Mar 03, 2026 | International University of Sarajevo

Print Syllabus