This challenge project will be about writing algorithms for our first data structure MyArray
The purpose of "MyArray" is to provide the functionality to support common collection behaviors. Our algorithms will provide the logic needed for these behaviors.
Strong suggestion: do not start any challenge problems until you have worked through the examples
Here is the Examples page... -- The challenge problems will be similar to the examples
Do the examples somewhat on your own and somewhat peeking at the solutions (this will help your pseudocode skills but will also be a good "object-oriented refresher")
When doing the challenge problems, try doing one algorithm at a time followed by an "algorithm walk through" as we learned previously.
You could try the "Algorithm Studio" if you like (provided along with the challenge) -- just be careful not spend time fixing bugs (it's not needed in pseudocode)
Most of our examples in this chapter use primitives for simplicity, but in reality our structures will contain proper objects like customers, employees, students, ... Thus we need to support objects.
This means we must do the following:
Use "a.equals(b)" in your algorithms, not "a == b". The latter ("==") is limited and will give the wrong answer for objects.
I hope we get "stumped" a little bit on some of these! That's how we'll learn. I would guess there would be a grading "curve" (that's a guess). Just do your best and fire questions to all avenues (discussion board, emails instructor/tutors, tutoring sessions, ...). And also step back and re-try an example, or try another if really stumped on one.
The files are simple for this challenge. They have already been setup for you (see "Provided Files" above).
Each algorithm has its own corresponding file in the "a3-project/A3" directory.
For example, the algorithm for the method "lastIndexOf" should be put in the file "A3/lastIndexOf.js".
In each file, simply replace the text "//ALGORITHM HERE (Pseudocode)" with your algorithm written in pseudocode per these syntax rules.
About half of the files are already completed. They make up the Examples for this chapter. The completed files will also provide good reference for you to help you get started on your own. You do not need to make any changes on the files that are already completed.
Be sure to create a "ZIP" archive type and not other archive types
Name your ZIP file in the usual way ("Assignment XX -- FirstName LastName.zip" where "XX" is the assignment D2L drop box name and FirstName and LastName are your corresponding names in D2L). E.g., "A3 -- Suni Lee.zip"
Add the "A3" directory into the ZIP file (note that the "A3" dir is located in your project root directory)
Please do not nest .zip files -- do not put other .zip files into the one ZIP archive file