Data Structures and Algorithms: Assignment v1.0

Data Structures and Algorithms

Assignment v1.0

Semester 2, 2022

Department of Computing Curtin University

1        Introduction

In practicals you have implemented and learned about a number of algorithms and ADTs and will be implementing more of these in the remaining practicals. In this assignment, you will be making use of this knowledge to implement a system to explore and compare a variety of ADT implementations. Feel free to re-use the generic ADTs from your practicals. However, remember to self-cite; if you submit work that you have already submitted for a previous assessment (in this unit or any other) you have to specifically state this. Do not use the Java/Python implementations of ADTs – if in doubt, ask.

2        The Problem

This assignment requires the extension of your graph code, or other approach(es), to determine the optimal series of moves to enter a string into a virtual keyboard. Movement is limited to up|down|left|right and selecting a key. Some keyboards have modes to enter upper/lowercase and numbers/punctuation. They also can wrap around the left|right|top|bottom or be limited at the edges. Your task is to build a representation of the keyboards and explore the steps for entering strings and find the “best” steps for a given string.

Images of virtual keyboards will be provided. You will need to decide on a way of representing keyboards in files to use as input to the program. You might want to start with 10-17 key numeric keyboard.

Your program should be called keyMeUp.py/java, and have three starting options:

  • No command line arguments : provides usage information
    • “-i” : interactive testing environment (java|python keyMeUp[.py] –i)
    • “-s” : silent mode (java|python keyMeUp[.py] –s keyFile strFile pathFile) When the program starts in interactive mode, it should show the following main menu:
  • Load keyboard file
  • Node operations (find, insert, delete, update)                – can build/extend keyboards
  • Edge operations (find, add, remove, update)
  • Display graph
  • Display graph information
  • Enter string for finding path
  • Generate paths
  • Display path(s) (ranked, option to save)
  • Save keyboard

You can structure the menu/UI differently, just make sure at least those feature options are included. When running in silent mode, you will give the input and output files on the command line.

  • keyFile – the file representing the keyboard
  • strFile – file containing one or more strings to generate paths for
  • pathFile – output the [ranked] paths to a file, with a score/rating.

Once you have a working program, you will showcase your program, and reflect on its performance. This investigation will be written up as The Report.

Remember: think before you code!

3        Submission

Submit electronically via Blackboard.

You should submit a single file, which should be zipped (.zip) or tarred (.tar.gz). Check that you can decompress it on the lab computers. These are also the computers on which your work will be tested, so make sure that your work runs there. The file must be named DSA_Assignment_<id> where the

<id> is replaced by your student id. There should be no spaces in the file name; use underscores as shown.

The file must contain the following:

  • Your code. This means all .java/.py files needed to run your program. Do include code provided to you as part of the assignment if that is required to run your program.
  • README file including short descriptions of all files and dependencies, and information on how to run the program.
  • Your unit test harnesses. One of the easiest ways for us to be sure that your code works is to

make sure that you’ve tested it properly. A test harness for class X should be called UnitTestX.

  • Project Report for your code, as described in Section 3.1.
  • A signed and dated cover sheet. These are available from Blackboard with the assignment specification. You can sign a hard copy and scan it in or you can fill in a soft copy and digitally sign it.

·        Java Students:

o Do not include .class files or anything else that we do not need. We will recompile

.java files to ensure that what we’re testing is what we’re reading. We will use javac

*.java to compile your files and run the unit tests by their expected names.

Make sure that your file contains what is required. It is your responsibility to make sure that your submission is complete and correct.

3.1      Project Report

You need to submit documentation in docx or pdf format.

Your Report will be around 6-10 pages (excluding UML and Javadocs [if used]) – it can be longer. It should include the following:

  • User Guide: how to use your simulation, and an overview of your program’s purpose and features.
    • Description of Classes: you need to let us know not only what the purpose of each class is but why you chose to create it. As part of this, also identify and justify any places where it was possibly useful to create a new class but you chose not to, especially when it comes to inheritance.
    • Justification of Decisions: when you choose an ADT, underlying data structure or an algorithm, you need to justify why you chose that one and not one of the alternatives.

·        UML Class diagram

  • Traceability Matrix of features, implementation and testing of your code
    • Showcase of your code output, including 3 scenarios:
      • Introduction: Explain the features you are showcasing/investigating through 3 scenarios:

e.g. you can compare different keyboards on the same strings, look at the effect of strings with (or without) caps/no-caps/numbers/punctuation, impact of wrap/no-wrap…

  • Scenario1: Describe how you have chosen to set up and compare your code run for the showcase. Include commands, input files, outputs – anything needed to reproduce your results. Discuss your results.
    • Scenario2 & Scenario3: (as above)
    • Conclusion and Future Work: Reflect on your implementation and how it might be improved. What further investigations and/or extensions could be added?

3.2      Marking

Marks will be awarded to your submission as follows:

  • [30 marks] Implementation. We will use unit testing as well as looking at code quality; your included test harnesses/test case specifications are 15 of these marks.
    • [30 marks] Demonstration. We’ll have a number of tests to run, and you get marks proportional to how many tests your code passes. If your code passes all of the tests, then you will get all of these 30 marks.
    • [40 marks] Project Report. As described in section 3.1
    • [Bonus Marks] There will be bonus marks available exceptional/additional features. This could include visualisations and additional game functionality.
    • Marks will be deducted for not following specifications outlined in this document, which includes incorrect submission format and content and using built-in Java/Python ADTs.

The aims of this marking breakdown is as follows:

  • To make sure you can discuss and justify your coding decisions
    • To promote good testing. Industry is repeatedly telling us they are really looking for students who can properly test their code.

3.3      Requirements for passing the unit

Students must submit an assignment worthy of scoring 15% to pass the unit.

This assignment has many correct solutions so plagiarism will be easy for us to detect (and we will). For information about plagiarism, please refer to http://academicintegrity.curtin.edu.au.

In the case of doubt, you may be asked to explain your code and the reason for choices that you have made as part of coding to the unit coordinator. A failure to adequately display knowledge required to have produced the code will most likely result in being formally accused of cheating.

Finally, be sure to secure your code. If someone else gets access to your code for any reason (including because you left it on a lab machine, lost a USB drive containing the code or put it on a public repository) you will be held partially responsible for any plagiarism that results.

3.4        Late Submission

If you need extra time and have a valid reason, you should apply for an extension through Oasis. Late submissions will incur a daily deduction.

3.5        Clarifications and Amendments

This assignment specification may be clarified and/or amended at any time. Such clarifications and amendments will be announced via Blackboard. These clarifications and amendments form part of the assignment specification and may include things that affect mark allocations or specific tasks.

Order Now

Get expert help for Data Structures and Algorithms: Assignment v1.0 and many more. 24X7 help, plag free solution. Order online now!

Universal Assignment (August 30, 2025) Data Structures and Algorithms: Assignment v1.0. Retrieved from https://universalassignment.com/data-structures-and-algorithms-assignment-v1-0/.
"Data Structures and Algorithms: Assignment v1.0." Universal Assignment - August 30, 2025, https://universalassignment.com/data-structures-and-algorithms-assignment-v1-0/
Universal Assignment September 19, 2022 Data Structures and Algorithms: Assignment v1.0., viewed August 30, 2025,<https://universalassignment.com/data-structures-and-algorithms-assignment-v1-0/>
Universal Assignment - Data Structures and Algorithms: Assignment v1.0. [Internet]. [Accessed August 30, 2025]. Available from: https://universalassignment.com/data-structures-and-algorithms-assignment-v1-0/
"Data Structures and Algorithms: Assignment v1.0." Universal Assignment - Accessed August 30, 2025. https://universalassignment.com/data-structures-and-algorithms-assignment-v1-0/
"Data Structures and Algorithms: Assignment v1.0." Universal Assignment [Online]. Available: https://universalassignment.com/data-structures-and-algorithms-assignment-v1-0/. [Accessed: August 30, 2025]

Please note along with our service, we will provide you with the following deliverables:

Please do not hesitate to put forward any queries regarding the service provision.

We look forward to having you on board with us.

Most Frequent Questions & Answers

Universal Assignment Services is the best place to get help in your all kind of assignment help. We have 172+ experts available, who can help you to get HD+ grades. We also provide Free Plag report, Free Revisions,Best Price in the industry guaranteed.

We provide all kinds of assignmednt help, Report writing, Essay Writing, Dissertations, Thesis writing, Research Proposal, Research Report, Home work help, Question Answers help, Case studies, mathematical and Statistical tasks, Website development, Android application, Resume/CV writing, SOP(Statement of Purpose) Writing, Blog/Article, Poster making and so on.

We are available round the clock, 24X7, 365 days. You can appach us to our Whatsapp number +1 (613)778 8542 or email to info@universalassignment.com . We provide Free revision policy, if you need and revisions to be done on the task, we will do the same for you as soon as possible.

We provide services mainly to all major institutes and Universities in Australia, Canada, China, Malaysia, India, South Africa, New Zealand, Singapore, the United Arab Emirates, the United Kingdom, and the United States.

We provide lucrative discounts from 28% to 70% as per the wordcount, Technicality, Deadline and the number of your previous assignments done with us.

After your assignment request our team will check and update you the best suitable service for you alongwith the charges for the task. After confirmation and payment team will start the work and provide the task as per the deadline.

Yes, we will provide Plagirism free task and a free turnitin report along with the task without any extra cost.

No, if the main requirement is same, you don’t have to pay any additional amount. But it there is a additional requirement, then you have to pay the balance amount in order to get the revised solution.

The Fees are as minimum as $10 per page(1 page=250 words) and in case of a big task, we provide huge discounts.

We accept all the major Credit and Debit Cards for the payment. We do accept Paypal also.

Popular Assignments

Assignment Help in Middle Park – Universal Assignment

Middle Park, located approximately 4 km southwest of Melbourne’s CBD, is a prestigious coastal suburb known for its historic homes, beachside lifestyle, and excellent educational facilities. Its proximity to universities, TAFE campuses, and professional institutes makes it a popular choice for students seeking quality education. Our assignment help in Middle

Read More »

Assignment Help in Mitcham – Universal Assignment

Mitcham, located approximately 20 km east of Melbourne’s CBD, is a well-established suburb with excellent educational facilities, parks, and residential amenities. Its proximity to universities, TAFE campuses, and professional institutions makes it an ideal location for students. Our assignment help in Mitcham offers professional, reliable, and affordable academic support to

Read More »

Assignment Help in Mill Park – Universal Assignment

Mill Park, located approximately 18 km northeast of Melbourne’s CBD, is a thriving suburb popular with families and students. With convenient access to nearby universities, TAFE campuses, and educational institutes, Mill Park attracts students who often juggle studies, work, and personal commitments. Our assignment help in Mill Park provides professional,

Read More »

Assignment Help in Mickleham – Universal Assignment

Mickleham, located approximately 28 km north of Melbourne’s CBD, is a rapidly growing suburb known for its family-friendly environment, new housing developments, and access to schools and educational facilities. With nearby TAFE institutes and universities, students residing in Mickleham often balance studies, part-time jobs, and personal responsibilities. Our assignment help

Read More »

Assignment Help in Mernda – Universal Assignment

Mernda, located about 28 km northeast of Melbourne’s CBD, is a rapidly growing suburb known for its family-friendly environment, parks, and educational facilities. With close access to universities, TAFE campuses, and vocational institutions, Mernda attracts students seeking quality education while managing other responsibilities. Our assignment help in Mernda provides professional,

Read More »

Assignment Help in Mentone – Universal Assignment

Mentone, located approximately 21 km southeast of Melbourne’s CBD, is a coastal suburb known for its beaches, parks, and family-friendly environment. With easy access to nearby universities, TAFE institutes, and colleges, Mentone attracts a diverse student population. Many students balance studies, part-time jobs, and personal commitments, making professional assignment help

Read More »

Assignment Help in Melton West – Universal Assignment

Melton West, located about 35 km west of Melbourne’s CBD, is a thriving suburb with a growing population of students and families. With access to Victoria University and nearby TAFE campuses, students in Melton West often juggle studies, part-time work, and other responsibilities. Our assignment help in Melton West offers

Read More »

Assignment Help in Melton South – Universal Assignment

Melton South, located approximately 36 km west of Melbourne’s CBD, is a growing residential suburb popular among students and families due to its affordable living and access to educational facilities. With nearby Victoria University and TAFE campuses, many students reside in Melton South while pursuing higher education. Our assignment help

Read More »

Assignment Help in Melton – Universal Assignment

Melton, located approximately 35 km west of Melbourne’s CBD, is a rapidly growing suburb with a diverse community of students and families. With access to Victoria University and TAFE campuses in nearby areas, students in Melton often balance studies, part-time jobs, and other responsibilities. To support their academic journey, our

Read More »

Assignment Help in Melbourne CBD – Universal Assignment

Melbourne CBD, the heart of Victoria’s capital, is a bustling hub of education, business, and culture. With major universities such as the University of Melbourne, RMIT University, and Swinburne University nearby, the CBD attracts thousands of students from Australia and around the world. Managing coursework, assignments, and projects alongside part-time

Read More »

Assignment Help in Meadow Heights – Universal Assignment

Meadow Heights, located in Melbourne’s north-west, is a diverse suburb popular among students and families due to its affordable housing and proximity to education hubs. With easy access to Victoria University’s campuses and nearby TAFE institutes, Meadow Heights is home to many students juggling studies, part-time jobs, and personal commitments.

Read More »

Assignment Help in Maribyrnong – Universal Assignment

Maribyrnong, a vibrant suburb located just 8 km northwest of Melbourne’s CBD, is well-known for its riverside living, community parks, and proximity to top universities and TAFE campuses. Many students choose to reside in Maribyrnong due to its convenient transport links and close access to educational institutions. However, balancing studies

Read More »

Assignment Help in McKinnon – Universal Assignment

McKinnon, located about 12 km southeast of Melbourne’s CBD, is a well-established suburb known for its quiet streets, quality schools, and close access to higher education institutions. With Monash University’s Caulfield campus nearby and several TAFE institutes within commuting distance, McKinnon is home to many students balancing study, work, and

Read More »

Assignment Help in Malvern East – Universal Assignment

Malvern East, located approximately 12 km southeast of Melbourne’s CBD, is a prestigious suburb known for leafy streets, quality schools, and proximity to top universities. With Monash University’s Clayton campus nearby, along with easy access to Swinburne University and RMIT, many students reside in Malvern East while pursuing higher education.

Read More »

Assignment Help in Malvern – Universal Assignment

Malvern, an inner suburb located just 8 km southeast of Melbourne’s CBD, is known for its leafy streets, heritage homes, excellent schools, and easy access to top universities. With Swinburne University (Hawthorn campus), Monash University (Caulfield campus), and the University of Melbourne within easy reach, Malvern is home to many

Read More »

Assignment Help in Maidstone – Universal Assignment

Located just 8 km west of Melbourne’s CBD, Maidstone is a growing residential suburb with a diverse community, modern housing estates, and excellent access to education facilities. With Victoria University (Footscray campus) nearby and easy transport links to RMIT, University of Melbourne, and other institutions, Maidstone attracts many local and

Read More »

Assignment Help in Macleod – Universal Assignment

Macleod, a leafy residential suburb in Melbourne’s north-east, is well-known for its strong community, excellent schools, and proximity to major education hubs. With La Trobe University in nearby Bundoora and easy access to RMIT and the University of Melbourne, Macleod is home to many students pursuing higher education. To support

Read More »

Assignment Help in Lyndhurst – Universal Assignment

Lyndhurst, a rapidly developing suburb in Melbourne’s south-east, is home to a growing number of students, professionals, and families. Located near Cranbourne and Dandenong, Lyndhurst offers convenient access to schools, TAFE campuses, and universities. With busy schedules, work commitments, and family responsibilities, many students in the area struggle to keep

Read More »

Assignment Help in Lynbrook – Universal Assignment

Lynbrook, a growing residential suburb in Melbourne’s south-east, is home to many students and young professionals pursuing higher education. With easy access to schools, TAFE institutes, and universities via the nearby South Gippsland Highway and Lynbrook Station, the area is popular among learners. However, balancing academic life with work, family,

Read More »

Assignment Help in Laverton North – Universal Assignment

Laverton North, an important industrial and business hub in Melbourne’s west, is home to many students who combine academic study with part-time work. Its proximity to major educational institutions, including Victoria University and several TAFE campuses, makes it a convenient place for learners. However, with busy schedules and academic pressure,

Read More »

Assignment Help in Laverton – Universal Assignment

Laverton, located in Melbourne’s western suburbs, is a diverse and rapidly growing community. With easy access to Melbourne CBD, major universities, and TAFE campuses, Laverton is home to many students balancing academics with work and family life. As study demands increase, the need for professional assignment help in Laverton is

Read More »

Assignment Help in Langwarrin – Universal Assignment

Langwarrin, located in Melbourne’s south-eastern suburbs, is a growing residential area known for its peaceful community, parks, and close proximity to educational institutions. Many students living in Langwarrin travel to nearby universities and TAFE campuses, balancing studies with work and family commitments. With increasing academic challenges, professional assignment help in

Read More »

Assignment Help in Lalor – Universal Assignment

Lalor, located in Melbourne’s northern suburbs, is a vibrant and multicultural community. With easy access to local schools, TAFE, and major universities in nearby suburbs, Lalor is home to many domestic and international students. While the suburb provides a supportive environment for learning, students often face tight deadlines and complex

Read More »

Assignment Help in Kooyong – Universal Assignment

Kooyong, an affluent suburb in Melbourne’s east, is home to students attending nearby universities, TAFE institutes, and vocational colleges. Known for its quiet streets, prestigious schools, and green surroundings, Kooyong provides an ideal environment for focused study. However, students often face challenging academic workloads, making professional assignment help in Kooyong

Read More »

Assignment Help in Kurunjang – Universal Assignment

Kurunjang, a growing suburb in Melbourne’s west, is home to many students attending nearby universities, TAFE campuses, and vocational institutes. Known for its open spaces, parks, and family-friendly environment, Kurunjang offers a peaceful setting for study. Despite its calm surroundings, students often face heavy academic workloads, making professional assignment help

Read More »

Assignment Help in Knoxfield – Universal Assignment

Knoxfield, a serene suburb in Melbourne’s east, is home to students attending nearby universities, TAFE campuses, and vocational institutes. Known for its leafy streets, parks, and family-friendly environment, Knoxfield offers a calm setting conducive to study. Despite its peaceful surroundings, academic workloads can be challenging, making professional assignment help in

Read More »

Assignment Help in Kingsville – Universal Assignment

Kingsville, a charming suburb in Melbourne’s west, is known for its accessible location, parks, and friendly residential community. With proximity to universities, TAFE campuses, and other educational institutes, Kingsville is a hub for students seeking quality education. Despite its convenience, managing academic workloads can be challenging, making professional assignment help

Read More »

Assignment Help in Kingsbury – Universal Assignment

Kingsbury, a vibrant suburb in Melbourne’s north, is home to many students attending nearby universities, RMIT, and TAFE campuses. Known for its diverse community, parks, and accessible public transport, Kingsbury offers an ideal environment for both learning and personal growth. Despite the comfortable surroundings, academic demands can be challenging, making

Read More »

Assignment Help in Kings Park – Universal Assignment

Kings Park, a growing suburb in Melbourne’s west, is popular among students attending nearby universities, colleges, and TAFE campuses. With parks, shopping centres, and a friendly residential community, Kings Park offers a convenient and comfortable environment for study. Despite this, academic workloads can be demanding, making professional assignment help in

Read More »

Assignment Help in Ivanhoe – Universal Assignment

Ivanhoe, a charming suburb in Melbourne’s northeast, is home to a growing student population due to its proximity to La Trobe University, RMIT, and various TAFE institutes. Known for its leafy streets, parks, and family-friendly environment, Ivanhoe provides a peaceful yet convenient location for students. However, the increasing academic workload

Read More »

Can't Find Your Assignment?