Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Fast Sorting Algorithms Implement a fast sorting algorithm as described in class. Here (Code Example Below) is some example code to use as a guideline.

Fast Sorting Algorithms

Implement a fast sorting algorithm as described in class. Here (Code Example Below) is some example code to use as a guideline. You need only implement the sorting algorithm; the main method will be provided for you.

You must hand in the Sorts class with the heapSort sorting algorithm implemented. This is the only file you should hand in. The heading of the method is as in the provided file. Do not change it.

CODE EXAMPLE:

import java.util.Arrays; public class Sorts { public static > void heapSort(T[] array) { } public static > void bubbleSort(T[] array) { T temp; boolean sorted; for (int i = array.length - 1; i > 0; --i) { sorted = true; for (int j = 0; j < i; ++j) { if (array[j].compareTo(array[j + 1]) > 0) { sorted = false; temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } if (sorted) { break; } } } public static > void insertSort(T[] array) { T temp; int j; for (int i = 1; i < array.length; ++i) { temp = array[i]; for (j = i; j > 0; --j) { if (array[j - 1].compareTo(temp) > 0) { array[j] = array[j - 1]; } else { break; } } if (j < i) { array[j] = temp; } } } public static > void mergeSort(T[] array) { if (array.length > 1) { T[] left = Arrays.copyOfRange(array, 0, array.length / 2); T[] right = Arrays.copyOfRange(array, array.length / 2, array.length); mergeSort(left); mergeSort(right); int i, l = 0, r = 0; for (i = 0; i < array.length && l < left.length && r < right.length; ++i) { if (left[l].compareTo(right[r]) <= 0) { array[i] = left[l++]; } else { array[i] = right[r++]; } } if (i < array.length) { if (l < left.length) { while (i < array.length) { array[i++] = left[l++]; } } else { while (i < array.length) { array[i++] = right[r++]; } } } } } public static > void quickSort(T[] array) { quickSort(array, 0, array.length - 1); } private static > void quickSort(T[] array, int left, int right) { int pivot = right; int l = left, r = right; if (left < right) { while (l < r) { while (l < r && array[l].compareTo(array[pivot]) <= 0) { ++l; } while (l < r && array[pivot].compareTo(array[r]) <= 0) { --r; } if (l < r) { T temp = array[l]; array[l] = array[r]; array[r] = temp; } } if (r != pivot) { T temp = array[pivot]; array[pivot] = array[r]; array[r] = temp; } quickSort(array, left, r - 1); quickSort(array, r + 1, right); } } public static > void selectSort(T[] array) { T temp; int mini; for (int i = 0; i < array.length - 1; ++i) { mini = i; for (int j = i + 1; j < array.length; ++j) { if (array[j].compareTo(array[mini]) < 0) { mini = j; } } if (i != mini) { temp = array[i]; array[i] = array[mini]; array[mini] = temp; } } } } 

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_2

Step: 3

blur-text-image_3

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

Pro SQL Server Wait Statistics

Authors: Enrico Van De Laar

1st Edition

1484211391, 9781484211397

More Books

Students also viewed these Databases questions

Question

Provide examples of Dimensional Tables.

Answered: 1 week ago