Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Add a method bubbleSort to the class ArraySorter, that performs a bubble sort of an array. The bubble sort algorithm examines all adjacent pairs of

Add a method bubbleSort to the class ArraySorter, that performs a bubble sort of an array. The bubble sort algorithm examines all adjacent pairs of elements in the array from the beginning to the end and interchanges (swaps) any two elements that are out of order. Each interchange makes the array more sorted than it was, until it is entirely sorted. The algorithm in pseudocode follows: Bubble sort algorithm to sort an array a Repeat the following until the array a is sorted: for (index = 0; index a[index + 1]) Interchange the values of a[index] and a[index + 1]

Please add a method bubleSort to the class ArraySort and follow the algorium above carefully. I will give the code for ArraySort class below. Also please use IDE to finish this question with comments and make sure it is working. In the result, it should print out multiple arrays that show how the bubbleSort process from beginng to final result step by step . Also do not erase or build a whole new class, the question need to add an method inside the given class ArraySort.

here is the ArraySorter class

public class ArraySorter { /** Precondition: Every element in anArray has a value. Action: Sorts the array into ascending order. */ public static void selectionSort(int[] anArray) { for (int index = 0; index < anArray.length - 1; index++) { // Place the correct value in anArray[index] int indexOfNextSmallest = getIndexOfSmallest(index, anArray); interchange(index, indexOfNextSmallest, anArray); //Assertion:anArray[0] <= anArray[1]< =...<= anArray[index] //and these are the smallest of the original array elements. //The remaining positions contain the rest of the original //array elements. } } /** Returns the index of the smallest value in the portion of the array that begins at the element whose index is startIndex and ends at the last element. */ private static int getIndexOfSmallest(int startIndex, int[] a) { int min = a[startIndex]; int indexOfMin = startIndex; for (int index = startIndex + 1; index < a.length; index++) { if (a[index] < min) { min = a[index]; indexOfMin = index; //min is smallest of a[startIndex] through a[index] } } return indexOfMin; } /** Precondition: i and j are valid indices for the array a. Postcondition: Values of a[i] and a[j] have been interchanged. */ private static void interchange(int i, int j, int[] a) { int temp = a[i]; a[i] = a[j]; a[j] = temp; //original value of a[i] } }

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

More Books

Students also viewed these Databases questions