INFO2050 - Advanced computer programming
You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time.
Bertrand Meyer
Informations
Schedule
Assignment (optional) | 20 Sep. 2019 | |
/ | 27 Sep. 2019 | |
Deadline | 03 Oct. 2019 | Don't forget to submit the optional assignment on the submission platform |
Assignment Discussion Ex. | 04 Oct. 2019 |
Exercise session 1: Pseudo-code and complexity |
Ex. | 11 Oct. 2019 | Exercise session 1: Pseudo-code and complexity (second part) |
Ex. | 18 Oct. 2019 | Exercise session 2: Recurrences |
Deadline | 05 Nov. 2019 | Don't forget to submit the first assignement on the submission platform |
Ex. | 08 Nov. 2019 | Exercise session 3: Linked list, Stack, Queue |
Assignment Ex. | 15 Nov. 2019 |
Second assignment: Exercise session 4: Heap, priority queue, tree |
Ex. | 22 Nov. 2019 | Exercise session 5: Brute force and dynamic programming |
Ex. | 29 Nov. 2019 | Exercise session 5: Brute force and dynamic programming |
Assignment Ex. | 06 Dec. 2019 |
Exercise session 6: Divide-and-conquer and greedy algorithms |
Deadline | 08 Dec. 2019 | Don't forget to submit the second assignment on the submission platform |
Ex. | 13 Dec. 2019 | Exercise session 7: Binary search tree |
Ex. | 20 Dec. 2019 | Exercise session 8: Hash table |
Deadline | 20 Dec. 2019 |
Don't forget to submit the third assignment on the submission platform |
Assignment |
14 Jul. 2020 | |
Deadline |
24 Aug. 2020 |
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.Assignments
Testing 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
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 thecp
command)rsync
: a command line utility to synchronize remote filessshfs
: 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.
Misc.
- Submission platform
- Mark criteria
- Pseudo-code LaTeX package of the reference book
- A working example of the LaTeX package and its result