This assessment relates to four learning outcomes of the course which are:
Across multiple tasks in this assignment, you will design and implement data structures that represent mazes as graphs and algorithms to explore these mazes. You will address both fully connected, non-cyclical mazes and mazes with cycles. Some of the components ask you to critically assess your solutions through both theoretical analysis and controlled empirical experiments to encourage reflection on the relationship between algorithm design and real-world performance. The assignment emphasizes on strategic thinking and the ability to communicate solutions clearly and effectively.
The assignment is broken up into a number of tasks (A, B, C, and D) to help you progressively complete the project. Please note that although completing one task can assist with subsequent tasks, each task can be attempted independently. Moreover, the tasks are designed in a way that even in cases where your implementation does not fully achieve the expected output, you can still discuss and present the theoretical aspects of your algorithmic design through your report.
Marks are broken up into two types:
Implementation marks are given for your code. Your code will be examined using a series of tests. The more tests you pass, the more marks your implementation will be awarded. 3 of your implementation marks are awarded for good software engineering (clean code, good comments, descriptive and small commits, etc), and so 12 marks are strictly for tests.
Completing Tasks A, B, C, and D will take you through the stages of completing the above objective for different scenarios, and allow you to assess which methods are the most suitable for different tasks.
Task A: Implement an adjacency list (data structure) for a graph (abstract data type).
Task B: Implement Kruskal’s Algorithm for generating a minimum-spanning tree of a graph and discuss different minimum-spanning tree behaviour.
Task C: Using theoretical and empirical analysis, prove which data structure (matrix vs list) and minimum-spanning tree algorithm (Prim’s vs Kruskal’s) combination is best for this problem (if any).
Task D: Use the minimum-spanning tree to plan an optimal exploration strategy using clones.
This assessment is designed to evaluate students’ understanding and practical application of algorithmic design paradigms and data structures through the creation and exploration of mazes represented as graphs. The tasks aim to develop proficiency in implementing algorithms, conducting theoretical and empirical analyses, and understanding performance efficiency in problem-solving contexts.
The assessment is divided into four tasks (A–D):
The academic mentor guided the student through the assignment using a structured, analytical, and iterative approach to ensure both conceptual clarity and technical accuracy.
The mentor began by explaining the purpose of the assessmentevaluating algorithmic efficiency and structural design. The student was guided to revisit the course learning outcomes (CLOs) and understand how each task connects to them, particularly focusing on problem-solving using data structures and algorithms.
The mentor helped the student visualise a maze as a graph, explaining the role of nodes (rooms) and edges (paths). Together, they explored how an adjacency list could efficiently represent the maze for traversal and algorithmic exploration. The mentor ensured the student wrote clean, modular, and well-commented code, aligning with good software engineering practices.
The student was guided to implement Kruskal’s Algorithm to create a minimum-spanning tree (MST). The mentor explained the importance of using a disjoint set (union-find) data structure to efficiently manage edges. The focus was on understanding the difference between cyclic and acyclic graph structures and how MSTs help achieve optimal connectivity.
Here, the mentor guided the student in conducting a comparative analysis between adjacency lists and matrices, as well as Kruskal’s and Prim’s algorithms. The student was taught to calculate time and space complexities, validate results through controlled experiments, and interpret output trends. The mentor emphasised critical thinking and connecting theoretical expectations with real-world performance.
Using the results from the MST implementation, the mentor supported the student in developing an exploration strategy. This included using clones (multiple agents) to optimise traversal. The focus was on converting analytical insights into a practical, algorithm-driven solution that maximises efficiency in exploring complex mazes.
Finally, the mentor guided the student in compiling a clear, structured report that combined implementation details, theoretical insights, and reflective analysis. The student was encouraged to discuss limitations, strengths, and the rationale behind algorithmic choices, thus demonstrating both technical understanding and communication proficiency.
By completing this assessment under academic mentorship, the student successfully:
Looking to understand how to approach your assignment effectively? Download this expert-written sample solution to explore the right structure, analysis, and writing style. This file serves as a reference guide to help you learn how to present ideas, apply concepts, and meet academic expectations confidently.
However, remember submitting this sample as your own work may lead to plagiarism issues and academic penalties. This solution is meant for reference and learning purposes only.
If you need a fresh, 100% plagiarism-free, and custom-written assignment tailored to your topic, our professional academic writers are here to help. They’ll craft an original paper based on your specific requirements, ensuring accuracy, originality, and top grades.
Take the smarter route learn from the sample, but submit your own unique work for the best results.
Download Sample Solution Order Fresh Assignment
© Copyright 2025 My Uni Papers – Student Hustle Made Hassle Free. All rights reserved.