CS526 Advanced Algorithms and Data Structures
CS526 Advanced Algorithms and Data Structures
Syllabus | International University of Sarajevo - Last Update on Mar 03, 2026
Computer Sciences and Engineering
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:
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
| 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)
Office Hours & Room
Assessment Methods and Criteria
Assessment Components
Final Exam (Project 2)
AI: Not AllowedAlignment with Learning Outcomes :
Mid-Term
AI: Not AllowedAlignment with Learning Outcomes :
Mini-project 1
AI: Not AllowedAlignment 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.
Learning Tips
Be prepared to contribute thoughtfully during class discussions, labs, or collaborative work. Active participation deepens understanding and encourages critical thinking.
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.
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.
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
Referencing Curricula Print this page
| Assessment Methods and Criteria | Evaluation Tool | Quantity | Weight | Alignment with LOs | AI Usage |
| Final Exam (Project 2) | 1 | 30 | Not Allowed | ||
| Semester Evaluation Components | |||||
| Mid-Term | 1 | 40 | Not Allowed | ||
| Mini-project 1 | 1 | 30 | Not Allowed | ||
| *** ECTS Credit Calculation *** | |||||
| Activity | Hours | Weeks | Student Workload Hours | Activity | Hours | Weeks | Student Workload Hours | |||
| Final Exam (Project) | 5 | 15 | 75 | Mid-term | 6 | 8 | 48 | |||
| Mini-projects | 9 | 3 | 27 | |||||||
| Total Workload Hours = | 150 | |||||||||
| *T= Teaching, P= Practice | ECTS Credit = | 6 | ||||||||
| Course Academic Quality Assurance: Semester Student Survey | Last Update Date: 27/03/2026 | |||||||||
