Data Structures and Algorithms

Program: Bachelors Program in AI & ML
Program Level: Bachelor
Language: English
Subject Syllabus

Subject Overview

A rigorous study of data organization, algorithm design, correctness, efficiency and scalable implementation. The subject combines classical theory with software engineering, AI/ML workloads, analytics, governance and contemporary computing requirements.

Learning Goal

Students will be able to select, design, implement, analyze and evaluate data structures and algorithms; prove correctness and complexity; solve computational problems; and make responsible engineering decisions for scalable AI-enabled systems.

Syllabus

1. Computational Problem-Solving Foundations

Learning Objective: Understand algorithms, abstract data types, specifications, invariants, pseudocode, recursion, iteration, memory models, references and correctness proofs using induction and loop invariants.

Category: foundation

2. Algorithm and Complexity Analysis

Learning Objective: Analyze time and space using asymptotic notation, recurrence relations, best/average/worst cases, amortized analysis, lower bounds and empirical benchmarking; evaluate performance trade-offs.

Category: foundation

3. Arrays, Linked Structures, Stacks and Queues

Learning Objective: Implement and compare arrays, dynamic arrays, linked lists, stacks, queues and deques; understand memory layout, locality and applications such as parsing, buffering and scheduling.

Category: core

4. Dictionaries, Hashing and Set Structures

Learning Objective: Design maps and sets using hashing, collision resolution and resizing; analyze load factors and expected performance; understand secure hashing and adversarial inputs.

Category: core

5. Trees and Hierarchical Data Structures

Learning Objective: Work with binary trees, traversals, binary search trees, AVL and red-black trees, B/B+ trees and tries; apply them to indexing, file systems, databases and autocomplete.

Category: core

6. Heaps, Priority Queues and Disjoint Sets

Learning Objective: Implement binary and specialized heaps, priority queues and union–find structures; analyze amortized operations and apply them to scheduling, clustering and graph algorithms.

Category: core

7. Searching, Sorting and Selection

Learning Objective: Master linear and binary search, comparison and non-comparison sorting, stability, in-place processing, order statistics and sorting lower bounds; select algorithms based on data characteristics.

Category: core

8. Algorithm Design Paradigms

Learning Objective: Apply divide-and-conquer, greedy methods, dynamic programming, memoization, backtracking and branch-and-bound; establish optimal substructure, correctness and practical trade-offs.

Category: core

9. Graph Representation and Traversal

Learning Objective: Model networks using adjacency structures; implement breadth-first and depth-first search, topological sorting, cycle detection, connected components and strongly connected components.

Category: core

10. Graph Optimization Algorithms

Learning Objective: Solve shortest-path, minimum-spanning-tree, network-flow and matching problems using established algorithms; assess constraints, correctness and analytics applications.

Category: application

11. String and Sequence Algorithms

Learning Objective: Apply pattern matching, rolling hashes, prefix functions, tries, suffix structures, longest-subsequence methods and edit distance to search, NLP, bioinformatics and anomaly detection.

Category: application

12. Advanced and Probabilistic Data Structures

Learning Objective: Use segment and Fenwick trees, skip lists, Bloom filters, count-min sketches and spatial indexes; evaluate approximation, false positives and range-query performance.

Category: advanced

13. Computational Tractability and Scalable Algorithms

Learning Objective: Understand P, NP, NP-completeness, reductions, approximation, randomized, online, streaming, parallel, distributed, cache-aware and external-memory algorithms.

Category: advanced

14. Algorithm Engineering, AI Applications and Governance

Learning Objective: Profile, test and optimize implementations; use standard libraries responsibly; evaluate cost, scalability and maintainability for AI/ML pipelines and digital platforms; address bias, privacy, security, energy use, reproducibility and emerging hardware-aware and learned data structures.

Category: contemporary

Data Structures and Algorithms
Bachelors Program in AI & ML