- Stefan Hugtenburg
- Isha Dijcks
- Dennis Korpel
- Greg Neustroev
- Maarten Sijm
- Jasper Uljee
- Maarten van Elsas
- Ivo van Kreveld
- Bryan van Wijk
- Pim van den Bogaerdt
Welcome to the website for submitting your programming (lab) assignments for the course on Algorithm Design. This site will also be used to register the grades for both these lab assignment as well as the weekly homework assignments.
General background, slides, learning objectives, etc. about this course can be found on BrightSpace.
Questions on your submission you can ask on the Discussion forum on BrightSpace (most preferred option), or you can approach the assistants during lab hours. Questions that require a minimal response and are related to specifically to your code can be placed through the Comment function at the bottom of the respective page.
Additional test in lab assignment
at Fri, Dec 1, 2017 13:19 updated at Fri, Dec 1, 2017 14:37
The tests at WebLab for assignments 2 to 4 are there to help you to develop a correct solution. It is not required to meet all tests: you also get points for solutions that are meet part of the tests, or you may get partial points for solutions that meet the tests but are incorrect or very slow.
We have just added an additional test to show that some submitted solutions that passed all previous tests are not 100% correct. If you are among them: This will cost you at most 1 out of the 20 points.
Good luck finishing the assignment.
- The TI2306-team
Regarding the proof in assignment 2
at Wed, Nov 29, 2017 12:05
Just a quick reminder/update: For question 3 an answer is requested (as always) in YOUR OWN WORDS. An exact copy of a proof from the slides or the solutions to the homework will not get you any points.
- The TI2306 team
at Mon, Nov 13, 2017 09:32 updated at Thu, Nov 16, 2017 22:16
On behalf of the Teachers and Teaching Assistants for the course I would also like to welcome to the Algorithmics course TI2306. On this “News” page you can find any extra information we would like to share with you regarding the labs exercises. In this first news post we present a small list of “tips & tricks” for your usage of WebLab.
How (not) to use WebLab
- Before you can submit exercises, make sure you enroll for the course.
- When you have navigated to the correct assignment, ensure you click the “pencil” icon in the top left corner that says “submission”. You can only start working on the assignment after you have done this.
- We recommend working in an IDE like Eclipse or IntelliJ and copying your solution to WebLab after completion. Whilst WebLab allows you to edit code online, debugging and live compilation are better supported in the full-blown IDEs.
- We provide at least one test case for every assignment, namely the example from the pdf. For most we also provide a very large testset, from which we can verify the timing constraints on the code, i.e. is your code efficient enough. This means that many special cases (in case of graphs for instance graphs with cycles) are not included in the test cases we provide. Thus we highly recommend you create your own tests for special cases like this.
Common WebLab errors
- An error along the lines of “Weblab can not be resolved” means you forgot to remove the package declaration at the top of your solution.
- Another way to trigger our friend the “Weblab can not be resolved” error is forgetting a closing bracket. Again we would like to stress we recommend working in a capable IDE such as Eclipse or IntelliJ and then copying your solutions to WebLab afterwards.
- An error along the lines of “class
Solutionshould be in its own file” means your Solution class is public, this should just read
class Solutionand not
public class Solution.
- As solutions need to be returned as a
String, we highly recommend you use the
StringBuilderclass, as without it
Stringconcatenations might quickly overtake the runtime of the rest of the algorithm.
- Although WebLab supports Java8 we unfortunately had to switch to java 7 for now. Currently WebLab does not support large enough test cases to allow us to distinguish between \( O(n^2) \) and \( O(n\log(n)) \) when we use java 8, only when we use java 7. We are in contact with the dev team to resolve this asap :)
- Static fields of your Solution class are shared among tests, so make sure to reinitialise this every run. (In the template we provide for you, no static variables are used.)
- Asserts are not enabled in WebLab, so do not rely on them ;)
If you have any questions, please do not hesitate to visit the TA’s during the lab sessions on Friday mornings (or on the extra occasion this Thursday 16/11/17).
On behalf of the TI2306-team I wish you good luck on the course,
- Stefan Hugtenburg