Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Hello I am taking a Data Structures & Algorithms class in Java this semester and we just got introduced to Arrays and manipulating them. I

Hello I am taking a Data Structures & Algorithms class in Java this semester and we just got introduced to Arrays and manipulating them. I am confused with the assignment so some help would be well appreciated! Also, each problem should be its own package.

Thanks!

The Assignment:

image text in transcribed

Unordered Array Sample Code:

package unorderedArray;

class UnorderedArray { private long[] a; // ref to array a private int nElems; // number of data items //----------------------------------------------------------- public UnorderedArray(int max) // constructor { a = new long[max]; // create the array nElems = 0; // no items yet } //----------------------------------------------------------- public boolean find(long searchKey) { // find specified value int j; for(j=0; j

Unordered Array App Sample Code

package unorderedArray;

class UnorderedArrayApp { public static void main(String[] args) { int maxSize = 100; // array size UnorderedArray arr; // reference to array arr = new UnorderedArray(maxSize); // create the array

arr.insert(77); // insert 10 items arr.insert(99); arr.insert(44); arr.insert(55); arr.insert(22); arr.insert(88); arr.insert(11); arr.insert(00); arr.insert(66); arr.insert(33);

arr.display(); // display items

int searchKey = 35; // search for item if( arr.find(searchKey) ) System.out.println("Found " + searchKey); else System.out.println("Can't find " + searchKey);

arr.delete(00); // delete 3 items arr.delete(55); arr.delete(99);

arr.display(); // display items again } // end main() } // end class UnorderedArrayApp

Ordered Array Sample Code:

package orderedArray;

class OrderedArray { private long[] a; // ref to array a private int nElems; // number of data items //----------------------------------------------------------- public OrderedArray(int max) // constructor { a = new long[max]; // create array nElems = 0; } //----------------------------------------------------------- public int size() { return nElems; } //----------------------------------------------------------- public int find(long searchKey) { int lowerBound = 0; int upperBound = nElems-1; int curIn; while(true) { curIn = (lowerBound + upperBound ) / 2; if(a[curIn]==searchKey) return curIn; // found it else if(lowerBound > upperBound) return nElems; // can't find it else // divide range { if(a[curIn] value) // (linear search) break; for(int k=nElems; k>j; k--) // move bigger ones up a[k] = a[k-1]; a[j] = value; // insert it nElems++; // increment size } // end insert() //----------------------------------------------------------- public boolean delete(long value) { int j = find(value); if(j==nElems) // can't find it return false; else // found it { for(int k=j; k

Orderedarray App Code

package orderedArray;

public class OrderedArrayApp { public static void main(String[] args) { int maxSize = 100; // array size OrderedArray arr; // reference to array arr = new OrderedArray(maxSize); // create the array

arr.insert(77); // insert 10 items arr.insert(99); arr.insert(44); arr.insert(55); arr.insert(22); arr.insert(88); arr.insert(11); arr.insert(00); arr.insert(66); arr.insert(33);

int searchKey = 55; // search for item if( arr.find(searchKey) != arr.size() ) System.out.println("Found " + searchKey); else System.out.println("Can't find " + searchKey);

arr.display(); // display items

arr.delete(00); // delete 3 items arr.delete(55); arr.delete(99);

arr.display(); // display items again } // end main()

}

1. Add two methods called getMax() and gtMi to the Unexdexsdaxzaxclass, which return the largest value and the smallest value in the array or -1 if the array is empty. Add some code in the main() of UnorderedArrayApp.java to test these methods. Add a merge() method to the QrderedArray class so that you can merge two ordered source arrays into an ordered destination array. Write code in main() of orderedArrayApp.java that inserts some random numbers into the two source arrays, calls merge (), and displays the contents of the resulting destination array. The source arrays may hold different numbers of 2. picking the smaller one to copy to the destination array. You'll also need to handle the situation when one source array exhausts its contents before the other. For example, assume two sources arrays are: srcArray1: 12 28 30 srcArroy2: 2 4 11 19 25 50 89 Then, the destination array should be: desArray: 2 4 11 12 19 25 28 30 50 89

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Understanding Databases Concepts And Practice

Authors: Suzanne W Dietrich

1st Edition

1119827949, 9781119827948

More Books

Students also viewed these Databases questions

Question

Describe alternatives to recruitment.

Answered: 1 week ago