Data Structures and Algorithms lab repository
Lab 1: Introduction to GIT and the work-flow of the lab + starting with Singly Linked Lists
- Assignment 1: Basic Operations on a Singly Linked List
Lab 2: Circular Linked Lists and Doubly Linked Lists (+ Introduction to complexity)
- Assignment 2: TBA
Lab 3: Test 1 - Lists
- Assignment: none
Lab 4: Trees - more precisely, Binary Trees, Balanced Binary Trees
- Assignment 3: TBA
Lab 5: Binary Search Trees
- Assignment 4: TBA
Lab 6: Test 2 - Trees
- Assignment: none
Lab 7: Hash Tables - introduction, collision detection, usages
- Assignment 5: TBA
Lab 8: Graphs - representation and traversals
- Assignment 6: TBA
Lab 9: Graphs - Graph Processing Algorithms (Dijkstra, Prim, Kursal, Floyd etc.)
- Assignment 7: TBA
Lab 10: Test 3 - Graphs
- Assignment: none
Lab 11: Sorting Algorithms - Bubble, Insertion, Selection, Merge, Quick, Radix.
- Assignment 8: TBA
Lab 12: Test 4 - Sorting Algorithms
- Assignment: none
Lab 13: Exam problem practice
- Assignment: none
- Assignments = 10% of total lab grade (each graded individually and separately, no 'collective' assignments)
- Test 1 - 20%
- Test 2 - 25%
- Test 3 - 25%
- Test 4 - 20%
Max number of absences = 1 (NOT applicable for test days) Assignments will be given dynamic feedback through GIT and will be graded only after one says he/she is thoroughly done with it. Only assignments which are pushed to GIT will be graded and taken into consideration.