Skip to content

Algorithms and Data Structures 2

Public syllabus for 2025-2026

Academic overview

Programme
IE
Period
Year 1, Semester 2
Credits
5
Weeks
14

Curriculum placement

Appears in study plans

Teaching team

Course coordinator
Seminar coordinators
Răzvan Călinescu, Alex Silaghi

Learning time distribution

Total
Curriculum Lecture Practice Total Weekly Lecture Practice
56 28 28 4 2 2
Exam hours
6
Individual Study Bibliography study Field study Homework Tutoring Others
63 23 9 26 5 0
Overall
125

Learning outcomes

Knowledge

  • (6a03a0922355ae3a04d2f214) identifies, explains, and justifies fundamental concepts of data structures, algorithms, and programming paradigms, as well as computer architecture.

Skills

  • (6a03a0992355ae3a04d2f3f9) Apply appropriate data modeling techniques to identify and capture an organization's data requirements.
  • (6a03a0992355ae3a04d2f3fb) Evaluate existing data models to ensure they meet the organization’s data requirements and business process needs.
  • (6a03a0932355ae3a04d2f236) develops, designs, and demonstrates complex software solutions using efficient algorithms and diverse programming paradigms.

Responsibility

  • (6a03a0942355ae3a04d2f2d5) develops interdisciplinary solutions by integrating mathematics with related fields and collaborating efficiently with specialized teams.
  • (6a03a0942355ae3a04d2f2db) develops a collaborative environment and takes responsibility for the successful and timely delivery of projects according to requirements.
  • (6a03a0942355ae3a04d2f2d8) produces software and continuously adapts it to new technologies and market requirements.

Online platform

Microsoft Teams

Course content

Content Methods Obs
Introduction. Review of basic knowledge for implementing data structures. Pointers. lecturing, dialogue, student debate 2h
Linked Lists. Simple linked lists concepts and implementation. Searching for information in a chained list. Inserting new nodes into a chained list. Analysis of the complexity of operations idem 2h
Linked Lists: Advanced Topics. Doubly linked lists. Inserting and deleting nodes from a doubly linked list. Stacks, tails, double tails. Lists in STL, Analysis of the complexity of operations idem 2h
Skip lists. Definition and implementation. Self-organizing lists. Analysis of the complexity of operations idem 2h
Hash tables, Direct addressing, chaining hashing. Examples of hash functions. Hashing through the open approach. Double hashing. Universal hashing. Perfect hashing. Complexity analysis. idem 2h
Heaps. Implementation of heap operations. Application: heapsort. Other applications. Analysis of the complexity of operations. idem 2h
Binary Search Trees (BST) Trees. Implementation: Insertion, Search, Traversal: preorder, inorder, postorder. Analysis of the complexity of operations idem 2h
Traversing binary search trees: preorder, outorder, postorder – the iterative version. Breadth-first search. Analysis of the complexity of the operations idem 2h
The deletion operation for a binary tree: Deletion by copying, Deletion by merging, Analysis of the complexity of the operations . Self-balancing BST: Implementation of insertion. idem 2h
Balancing binary search trees: the DSW algorithm. AVL tree operations: Insertion and deletion, Rotations. Analysis of the complexity of operations idem 2h
Splay trees. Definition. Implementation of operations: Introduction. Deletion. Analysis of the complexity of operations. idem 2h
Red-Black trees. Definition. Implementation of specific operations. Analysis of the complexity of operations idem 2h
Prefix trees. Definition. Implementation of specific operations. Analysis of the complexity of operations. idem 2h
Revision open questions 2h

Course bibliography

T.H. Cormen, C.E.Leiserson, R.R. Rivest, C. Stein – Introduction to Algorithms, MIT Press. 4th Ed. 2022.

Seminar content

Content Methods Obs
Introduction to the C language. Review of simple data processing and input/output operations. Short recap of data structures presented during the lecture. Students will implement data structures on the Stepik platform. 2h
Simple linked lists implementation. Searching in a linked list. Insertion and deletion of values to/from a linked list. Idem 1 2h
Linked lists applications Idem 1 2h
......Stacks and Queues. Implementation of insertion, deletion. Applications. Idem 1 2h
Mini projects using linear data structures: Store, Warehouse.  Idem 1 2h
Lab evaluation two part test:- depiction of operations on linear data structures- implementation of a function that operates on a given data structure 2h
Heaps: Max Heap and Min Heap. Insertion, deletion. Heapsort. Applications of heaps. Idem 1 2h
Implementation of Binary Search Trees: Insertion, Search, Deletion.  Idem 1 2h
Binary Search Tree. Further  exercises Idem 1 2h
AVL Tree. Implementation of simple and double rotations, insertion and deletions. Idem 1 2h
AVL Tree. Insertion and deletion. Idem 1 2h
Splay Tree. Implementation of the splay function. Using the splay function in insertion, search, and deletion.  Idem 1 2h
Individual project presentation (if it is the case). Recap. Idem 1; project presentation 2h
Lab evaluation two part test:- depiction of operations on linear data structures- implementation of a function that operates on a given data structure 2h

Seminar bibliography

Bibliography:Pas cu Pas platform: https://t.ly/ads2-26

Corroboration

This is a basic course in computer science programs all around the world. Questions from this course appear both in the graduation exam, as well as in hiring interviews.

AI tools guidance

The use of chat-like tools to understand the reason for the exercise and to walk through debugging path is encouraged. The use of these tools for solving the exercises in copy-paste fashion is discouraged, as they may leave the false impression of skill building. Even if the student reads and understands the code, this alone does not replace the experience of building the code yourself and debugging. This experience enables long-term skill-building. The use of generative AI tools is prohibited during evaluations. Breaking this rule once will lead to being marked absent for the evaluation (grade 0). Breaking this rule the second time will conclude in official report to the ethics committee.

Evaluation and delivery

Activity Criteria Methods Percentage
C
  • Final
  • Open-answer exam focused on analytical thinking related to the complexity of data structure operations.
  • 30.0%
S
  • Concepts about data structures. Data structure implementations. Lab work and homework increase the chances for a high mark
  • Average of the three lab evaluations. In case a student misses an evaluation, the grade for that evaluation is 0.
  • Test 1: Linear data structures understanding and operation design
  • Test 2: Tree-like data structures understanding and operation design
  • Test 3: Linear and tree-like data structures implementation
  • 70.0%

Performance standards

pass both sections: Course/Seminar-Lab  - knowledge of basic notions about data structures: the written exam will consist of simple questions that test this knowledge.  abilities to solve simple problems.  in case a student does not have a passing mark for the lab, the exam grade from Session A will replace the smallest mark of the lab evaluations. If the lab grade is still under the passing mark, the student will recontract this subject next year.

Additional info

-