INFO0902 - Data structures and algorithms
Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.
||08 Feb. 2019||
||15 Feb. 2019||
Exercise session 1: Pseudo-code and recursion
|Deadline||21 Feb. 2019|
|Feedback Tutorial Assignment||22 Feb. 2019||
Tutorial: Let's C
|Ex.||01 Mar. 2019||
Exercise session 2: Analysis tools (first part)
|Ex.||08 Mar. 2019||
Exercise session 2: Analysis tools (second part)
|Ex.||15 Mar. 2019||
Exercise session 3: Stacks, Queues, Lists, Vectors and Sequences
|22 Mar. 2019||
Assignment 2:Updated on 05th of April (Maze.h) FAQ for the second assignment.
Exercise session 4: Heaps, Priority queues and Trees
||24 Mar. 2019|
|Ex.||29 Mar. 2019||
Exercise session 5: Dictionaries--binary search trees
|Ex.||05 Apr. 2019||
Exercise session 6: Dictionaries--hash tables
|/||7 Apr. 2019||
|/||13 Apr. 2019||
|26 Apr. 2019||
Exercise session 7: Brute force and dynamic programming (first part)
|Deadline||28 Apr. 2019||
check out the FAQ for the second assignment.
|Ex.||03 May 2019||
Exercise session 7: Brute force and dynamic programming (second part)
|Ex.||10 May 2019||
Exercise session 8: Divide and conquer and greedy algorithms
||16 May 2019|
|Ex.||17 May 2019||
Exercise session 9: Graphs
FAQ for the first assignment
Although it is technically possible (with some pointer algebra) to use the given signature directly, it might be cleaner to use an
staticauxiliary function which has the proper signature.
size_tvaribles on the same number of bits as it is on ours.
This can either be ignored, or you can change the formatting as need. In any case, the
main.cis not used during grading.
FAQ for the second project
MzIsValidcan be difficult. In this case, it is enough to provide an upper bound of the complexity without providing an example of a maze corresponding to this worst case.
Supplementary materialVisual Algo is a site which illustrates many algorithms and data structures of the course. In addition, in the training section, you are able to create online quizz on those topics to test your knowledge.
Firstly, you need to create an account through the registration page.
Then you can connect to the machines thanks to SSH with the following command:
loginby your actual login and
xxby a machine number (
xx=01..25). SSH will open a terminal on the remote machine. For windows user, the PuTTY utility will mimic SSH behaviour (an illustrated step-by-step tutorial can be found here).
Several solutions are available to ship source code to and from the ms8xx machines.
- FileZilla: a graphic, cross-platform FTP client (an illustrated step-by-step tutorial can be found here)
scp: a command line utility to transfert file from/to remote hosts (it works much like the
rsync: a command line utility to synchronize remote files
sshfs: a command line utility to "mount" a remote directory
- Read the man page (so you can say you have)
- Try the help flags
-h, --help(you might even get useful information)
- Google your questions or get a succinct tutorial (others have stumbled on the same difficulties, let them help you)
- Script the data transferts, compilation steps, testing suite (human memory is the most expensive)
Oh, and be sure to
chmod your home folder to prevent others from messing
with your files.