INFO2050 - Advanced computer programming

Random CS quote

Measuring programming progress by lines of code is like measuring aircraft building progress by weight.

Bill Gates

Informations

Schedule

Project (optional) 22 Sep. 2017

Statement for project 0
Code

Ex. 29 Sep. 2017 Exercise session 1: Pseudo-code and complexity
Project Ex. 06 Oct. 2017

First assignmnet
Code

Exercise session 1: Pseudo-code and complexity (second part)

Ex. 13 Oct. 2017 Exercise session 2: Recurrences
Ex. 20 Oct. 2017 Exercise session 2: Recurrences (second part)
Project Ex. 27 Oct. 2017

Second assignment
Code
Updated on 24th of November (Maze.h)

Exercise session 3: Linked list, Stack, Queue

Deadline 03 Nov. 2017 Don't forget to submit the first assignement on the submission platform
Ex. 10 Nov. 2017 Exercise session 4: Heap, priority queue, tree
Ex. 17 Nov. 2017 Exercise session 5: Binary search trees
Project Ex. 24 Nov. 2017

Third assignment
Code
Example 1, example 2, example 3

Exercise session 6: Hash tables

Deadline 01 Dec. 2017 Don't forget to submit the second assignment on the submission platform
Ex. 08 Dec. 2017 Exercise session 7: Problem solving (brute force and dynamic programming)
Ex. 15 Dec. 2017 Exercise session 8: Problem solving (divide-and-conquer and greedy)
Deadline 22 Dec. 2017 Don't forget to submit the third assignment on the submission platform
Project
04 Jul. 2018

Statement for 2nd session assignment
Code

Deadline
14 Aug. 2018

Don't forget to submit your result for the 2nd session assignment on the submission platform

Supplementary material

Visual Algo is a site which illustrates many algorithms and data structures of the course. In addition, in the training section, you can to create online quizz on those topics to test your knowledge.

Projects

Testing machines

The projects must compile on the ms8xx (xx=01..25) machines !

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:

  • ssh login@ms8xx.montefiore.ulg.ac.be
where you need to replace login by your actual login and xx by 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.

Several solutions are available to ship source code to and from the ms8xx machines.

  • FileZilla: a graphic, cross-platform FTP client
  • scp: a command line utility to transfert file from/to remote hosts (it works much like the cp command)
  • rsync: a command line utility to synchronize remote files
  • sshfs: a command line utility to "mount" a remote directory
Those utilities might need some configuration/getting-used-to. A few hints to help you out:
  • 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.

Misc.

Last modified on July 04 2018 11:04