Go语言代写 | Midterm Assignment
Q1 Midterm Rules and Guidelines
By taking this midterm you agree to the following rules and guidelines:
You acknowledge that you will adhere to the academic integrity policy for this course. You must uphold academic honesty where you cannot communicate with anyone (i.e., classmates, peers, friends, family, TAs, etc.) about discussing, brainstorming, implementing this question. I mean it! You cannot speak a word to anyone about this midterm at anytime. Similar to an actual midterm, this should be done solely by yourself.
TAs and I will no longer being answering questions speciﬁcally related to the material in this midterm and will not be providing any assistance on the debugging or implementation for this midterm. The main reason for this is to ensure those students who complete this early are not at a disadvantage to students who complete this later, where questions may have been asked and they may not have enough time to update their solutions.
We will be checking online sources for potential plagiarism. You should not be looking online for possible answers or if you ﬁnd an answer using any of its solution. Anything resembling an online solution will receive a zero.
You can use the code presented in lecture, module slides, textbook, course videos, or prior solutions to homework. Those are all fair game to use towards a solution or as a solution.
We won’t clarify questions on the midterm so make assumptions as needed. Just say in a comment, “Lamont, I’m assuming x y z…”. I’ll make the determination during grading whether that assumption is valid.
If found not following the above rules then you will receive a zero for this midterm, and possibly further action at the MPCS/University level.
Ask on Ed if you are unsure about these policies or an action you are doing would warrant a zero.
Q2 Covid Wrangling with Work Stealing
In this midterm assignment, you will implement the exact same covid program from homework #2 with a work-stealing distribution scheme instead of the static distribution scheme. This question is separated into three parts (i.e., three subquestions) to help you build up the stealing algorithm. First, you will need to get the midterm starter code by accepting the following invite:
All ﬁnal submissions must be submitted to your repository for the designated deadlines below
Graduating Students: Friday December 3rd, 11:59pm CDT
Non-graduating Students: Tuesday December 7th, 11:59pm CDT
Testing: You should be able to use the same testing framework provided by homework #2 to verify you are getting the right results. Similar to homework #2 you will need to download the data and place it into the midterm/covid/data/ directory. I do have a .gitignore that should exclude the data ﬁles but please make sure to double check that you do not submit those ﬁles. There is no grader directory because this will be graded as if it was a midterm, which is done manually. This will be returned back to you so you can receive feedback about any deductions.
Q2.1 Bounded Dequeue
Inside the ﬁle called midterm/covid/bounded.go, provide the implementation of a Bounded DEQueue presented in lecture. However, with one caveat, this implementation must be implemented using a linked-list of node pointers instead of an array (i.e., a slice). You will need to rethink how you can reshape the code provided in lecture to now be a linked-list of runnable tasks. Your implementation is required to use the following deﬁnitions to implement the queue