Question: Objective: Add a Quicksort method to your previous assignment Steps: Create a separate Utility class with a static Quicksort method that accepts an array as

Objective:

  • Add a Quicksort method to your previous assignment

Steps:

  • Create a separate Utility class with a static Quicksort method that accepts an array as an input argument, and returns a sorted array.
  • Call the Quick sort method from your same main class as last week with the same numbers. Do not create an instance of the "Utility" class.
  • Display the resulting list in ascending and descending order (same as last week)
  • Update the print statements in your main method to indicate that you're using Quicksort

My previous assignment:

import java.util.Scanner;

public class Assignment2Main {

public static void main(String[] args) { int [] inputArray = new int[5];

System.out.println("Enter 5 numbers: ");

Scanner sc= new Scanner(System.in);

for(int i=0;i<5;i++)

{

inputArray[i]=sc.nextInt();

while(inputArray[i]<1)

{

System.out.println("Not a whole number, Please enter a whole number");

inputArray[i]=sc.nextInt();

}

}

System.out.println("Array entered: ");

for(int i=0;i<5;i++)

System.out.print(inputArray[i]+" ");

System.out.println();

Database myDatabase = new Database(inputArray);

System.out.println("Avg: "+myDatabase.avg());

System.out.println("min: "+myDatabase.min());

System.out.println("max: "+myDatabase.max());

System.out.println("Enter key to search");

int key=sc.nextInt();

int index=myDatabase.binarSearch(key);

if(index>=0 && index<=4)

System.out.println("In sorted array, Key found at position :"+(index+1));

else

System.out.println("key not present in array");

System.out.println("Array after bubble sort");

int[] bubbleResult=myDatabase.bubbleSort();

System.out.println("ascending order: ");

for(int i=0;i<5;i++)

System.out.print(bubbleResult[i]+" ");

System.out.println();

System.out.println("descending order: ");

for(int i=4;i>=0;i--)

System.out.print(bubbleResult[i]+" ");

sc.close();

} }

public class Database { private int numbers[]=new int[5];

public Database(int arr[])

{

for(int i=0;i<5;i++)

numbers[i]=arr[i];

}

public int[] bubbleSort()

{

int temp;

for(int i=0; i < 5; i++)

{

for(int j=1; j < (5-i); j++)

{

if(numbers[j-1] > numbers[j])

{

temp = numbers[j-1];

numbers[j-1] = numbers[j];

numbers[j] = temp;

}

}

}

return numbers;

}

public int binarSearch(int key)

{

int start = 0;

int end = numbers.length - 1;

bubbleSort();

while (start <= end)

{

int mid = (start + end) / 2;

if (key == numbers[mid])

{

return mid;

}

if (key < numbers[mid])

{

end = mid - 1;

}

else

{

start = mid + 1;

}

}

return -1;

}

public int min()

{

int least=numbers[0];

for(int i=1;i<5;i++)

if(numbers[i]

least=numbers[i];

return least;

}

public int max()

{

int highest=numbers[0];

for(int i=1;i<5;i++)

if(numbers[i]>highest)

highest=numbers[i];

return highest;

}

public double avg()

{

int sum=0;

for(int i=0;i<5;i++)

sum=sum+numbers[i];

return((double)sum/5);

}

}

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!