Data Structures and Algorithms

De la WikiLabs
Jump to navigationJump to search

The Data Structures and Algorithms course is based on knowledge gained from the Computer Programming course in the first semester, and its role is to provide the base for algorithmic thinking, problem solving and advanced computer programming skills.

Lecture Slides

Homework - 2014

  1. DSA Homework 1 - soft deadline: 13.03.2014, 23:59, hard deadline: 27.03.2014, 23:59 - Results
  2. DSA Homework 2 - soft deadline: 27.03.2014, 23:59, hard deadline: 10.04.2014, 23:59 - Results
  3. DSA Homework 3 - soft deadline: 10.04.2014, 23:59, hard deadline: 24.04.2014, 23:59 - Results
  4. DSA Homework 4 - soft deadline: 24.04.2014, 23:59, hard deadline: 08.05.2014, 23:59 - Results
  5. DSA Homework 5 - soft deadline: 08.05.2014, 23:59, hard deadline: 22.05.2014, 23:59 Results
  6. DSA Homework 6 - hard deadline: 22.05.2014, 23:59

Homework submitted after the soft deadline will only receive half the credit. Homework submitted after the hard deadline will receive no credit.

Information: There is a general programming course starting on Coursera on the 2nd of June. I recommend taking it in order for you to practice concepts and learn a new programming language. Python is widely spread and really useful for you to know.

Information: There is an algorithm course on Coursera staring on 13th of June.

Deliverables

Submissions must include one or more C source files, compilable with GCC version 4.8.0 or greater, and a .txt document (NOT a doc/ docx or pdf file) including the algorithm description and a short analysis of the complexity.

Submission

Homework will be submitted via e-mail at address homework@dcae.pub.ro.

The e-mail subject MUST follow the following template: [DSA]<your_name> - <your_group> - <homework #>. E.g.: [DSA]Radu Hobincu - 421G - 1

The e-mail body should contain any comments you wish to make on the homework.

The e-mail attachments should consist of at least two files: one or more C source files, having a .c extension, and a text file, having a .txt extension, containing the algorithm description and analysis.

NOTE: The arrival time of the e-mail is considered as the submission time, so make sure you submit some time before the deadline.

Code Examples

DSA Lab Web Page

On this web page you will find lab assignments, code examples, related resources and, as a bonus, you can evaluate your progress (how many points you have obtained so far).

Useful Links

Recommended readings

  • The Algorithm Design Manual: Skiena
  • Algorithms (4th Edition): Sedgewick & Wayne
  • An Introduction to the Analysis of Algorithms: Sedgewick
  • The Art of Computer Programming: Knuth
  • Concrete Mathematics: A Foundation for Computer Science: Knuth

Other resources

  • Algorithms: Design and Analysis, Part 1: here
  • Algorithms: Design and Analysis, Part 2: here
  • Analysis of Algorithms: here
  • Algorithms, Part I: here
  • Algorithms, Part II: here
  • Stack Overflow: here

Exam

  • The interviews for the homework for students that obtained 50p+ is on the 1st of June at 10:00 DSA - Interview Schedule
  • DSA - Exam schedule
  • The maximum points for the final exam are 30 points split into 15p a multiple choice test for 15 mins and 15p for a practical application.