Question: In the following five problems, you modify the Array class defined in this chapter to make it behave more like Python's list class. For each

In the following five problems, you modify the Array class defined in this chapter to make it behave more like Python's list class. For each solution, include code that tests your modifications to the Array class. I have given starter file for each problem as a hint.
Add an instance variable logicalSize to the Array class. This variable is initially 0 and will track the number of items currently available to users of the array.
Then add the method size() to the Array class. This method should return the array's logical size. The method _ should still return the array's capacity or physical size.
Add the methods grow and shrink to the Array class. These methods should use the strategies discussed in this chapter to increase or decrease the length of the list contained in the array. Make sure that the physical size of the array does not shrink below the user-specified capacity and that the array's cells use the fill value when the array's size is increased.
Add the methods insert and pop to the Array class. These methods should use the strategies discussed in this chapter, including adjusting the length of the array, if necessary. The insert method expects a position and an item as arguments and inserts the item at the given position. If the position is greater than or equal to the array's logical size, the method inserts the item after the last item currently available in the array.
The pop method expects a position as an argument and removes and returns the item at that position. The pop method's precondition is 0index
 In the following five problems, you modify the Array class defined

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!