Bounded stack recordings - the recordings on a bounded


Project Overview -

A scroll is a data structure that is similar to a list in that it stores elements in a sequence. Unlike a list, a scroll keeps track of a distinguished position in the sequence that we will call the "cursor position". In this assignment we will represent a scroll as two side-by-side sequences - a left sequence and a right sequence. The position between the left sequence and the right sequence is the cursor position. The cursor position can be at the beginning of the scroll, at the end of a scroll, or between to elements in the scroll. We say that the elements to the left of the cursor are before the cursor, while the elements to its right are after the cursor.

  • [ ][A B C] - A scroll with three elements whose cursor is at the beginning of the scroll.
  • [A B C][ ] - A scroll with three elements whose cursor is at the end of the scroll.
  • [A B][C D] - A scroll with four elements whose cursor is in the middle of the scroll.

Unlike a Java list, a scroll is not a random access data structure. You cannot immediately "jump" to a particular position. You must scroll backwards (retreat) or forward (advance) to arrive at a new position.

Your assignment will be to create a scroll component consistent with the following class diagram.

Bounded Stack Recordings

The recordings on a bounded stack component show how to create and test a stack component from scratch. They may be able to help you better understand how to create and test the scroll component. However, there are several things included in the stack component videos which do not apply at all to this assignment. They include the following:

  • You will not have to create separate projects for the scroll interface and implementations. Put everything in the same project.
  • You can try to give the representation, abstraction function, and representation invariant in the main Javadoc comment for both concrete classes: StackScroll and ListScroll. But you do not have to, and I am not going to grade this.
  • The scroll component will not have an isValid method.
  • The scroll component will not be bounded.

The videos are entirely optional, and the may or may not be helpful to you. Therefore, it is entirely up to you whether to view them or not. They are broken up into section, so you may want to view a particular section if you think it may be helpful.

Various Notes

  • For the StackScroll implementation, you are restricted to using only three stack methods: push, pop, and size.
  • For the swapRights method, you must implement this in three different places: StackScroll, ListScroll, and AbstractScroll. The StackScroll implementation should handle the method call when both scrolls are stack-scrolls, the ListScroll implementation should handle the method call when both scrolls are list-scrolls, and the AbstractStack implementation should handle the method call when the scroll implementations are not the same. Therefore the StackScroll and ListScroll methods will be primary methods and the AbstractScroll method will be a secondarymethod.

Attachment:- Assignment File.rar

Request for Solution File

Ask an Expert for Answer!!
Computer Engineering: Bounded stack recordings - the recordings on a bounded
Reference No:- TGS02468147

Expected delivery within 24 Hours