Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

USING JAVA, change these files so that it keeps the DVDs sorted by title. Use th

ID: 3682568 • Letter: U

Question

USING JAVA, change these files so that it keeps the DVDs sorted by title. Use the attached Sorting class to help you out. Make sure you include a driver to test it out. THANK YOU!

SORTING:

//********************************************************************
// Sorting.java Author: Lewis/Loftus
//
// Demonstrates the selection sort and insertion sort algorithms.
//********************************************************************

public class Sorting
{
//-----------------------------------------------------------------
// Sorts the specified array of objects using the selection
// sort algorithm.
//-----------------------------------------------------------------
public static void selectionSort (Comparable[] list)
{
int min;
Comparable temp;

for (int index = 0; index < list.length-1; index++)
{
min = index;
for (int scan = index+1; scan < list.length; scan++)
if (list[scan].compareTo(list[min]) < 0)
min = scan;

// Swap the values
temp = list[min];
list[min] = list[index];
list[index] = temp;
}
}

MOVIES:

//********************************************************************
// Movies.java Author: Lewis/Loftus
//
// Demonstrates the use of an array of objects.
//********************************************************************

public class Movies
{
//-----------------------------------------------------------------
// Creates a DVDCollection object and adds some DVDs to it. Prints
// reports on the status of the collection.
//-----------------------------------------------------------------
public static void main (String[] args)
{
DVDCollection movies = new DVDCollection();

movies.addDVD ("The Godfather", "Francis Ford Coppala", 1972, 24.95, true);
movies.addDVD ("District 9", "Neill Blomkamp", 2009, 19.95, false);
movies.addDVD ("Iron Man", "Jon Favreau", 2008, 15.95, false);
movies.addDVD ("All About Eve", "Joseph Mankiewicz", 1950, 17.50, false);
movies.addDVD ("The Matrix", "Andy & Lana Wachowski", 1999, 19.95, true);

System.out.println (movies);

movies.addDVD ("Iron Man 2", "Jon Favreau", 2010, 22.99, false);
movies.addDVD ("Casablanca", "Michael Curtiz", 1942, 19.95, false);

System.out.println (movies);
}
}

DVD COLLECTION:

//********************************************************************
// DVDCollection.java Author: Lewis/Loftus
//
// Represents a collection of DVD movies.
//********************************************************************

import java.text.NumberFormat;

public class DVDCollection
{
private DVD[] collection;
private int count;
private double totalCost;

//-----------------------------------------------------------------
// Constructor: Creates an initially empty collection.
//-----------------------------------------------------------------
public DVDCollection ()
{
collection = new DVD[100];
count = 0;
totalCost = 0.0;
}

//-----------------------------------------------------------------
// Adds a DVD to the collection, increasing the size of the
// collection array if necessary.
//-----------------------------------------------------------------
public void addDVD (String title, String director, int year,
double cost, boolean bluRay)
{
if (count == collection.length)
increaseSize();

collection[count] = new DVD (title, director, year, cost, bluRay);
totalCost += cost;
count++;
}

//-----------------------------------------------------------------
// Returns a report describing the DVD collection.
//-----------------------------------------------------------------
public String toString()
{
NumberFormat fmt = NumberFormat.getCurrencyInstance();

String report = "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ";
report += "My DVD Collection ";

report += "Number of DVDs: " + count + " ";
report += "Total cost: " + fmt.format(totalCost) + " ";
report += "Average cost: " + fmt.format(totalCost/count);

report += " DVD List: ";

for (int dvd = 0; dvd < count; dvd++)
report += collection[dvd].toString() + " ";

return report;
}

//-----------------------------------------------------------------
// Increases the capacity of the collection by creating a
// larger array and copying the existing collection into it.
//-----------------------------------------------------------------
private void increaseSize ()
{
DVD[] temp = new DVD[collection.length * 2];

for (int dvd = 0; dvd < collection.length; dvd++)
temp[dvd] = collection[dvd];

collection = temp;
}
}

DVD:

//********************************************************************
// DVD.java Author: Lewis/Loftus
//
// Represents a DVD video disc.
//********************************************************************

import java.text.NumberFormat;

public class DVD
{
private String title, director;
private int year;
private double cost;
private boolean bluRay;

//-----------------------------------------------------------------
// Creates a new DVD with the specified information.
//-----------------------------------------------------------------
public DVD (String title, String director, int year, double cost,
boolean bluRay)
{
this.title = title;
this.director = director;
this.year = year;
this.cost = cost;
this.bluRay = bluRay;
}

//-----------------------------------------------------------------
// Returns a string description of this DVD.
//-----------------------------------------------------------------
public String toString()
{
NumberFormat fmt = NumberFormat.getCurrencyInstance();

String description;

description = fmt.format(cost) + " " + year + " ";
description += title + " " + director;

if (bluRay)
description += " " + "Blu-Ray";

return description;
}
}

Explanation / Answer

import java.text.NumberFormat; //******************************************************************** // Sorting.java Author: Lewis/Loftus // // Demonstrates the selection sort and insertion sort algorithms. //******************************************************************** class Sorting { //----------------------------------------------------------------- // Sorts the specified array of objects using the selection // sort algorithm. //----------------------------------------------------------------- public static void selectionSort(Comparable[] list,int count) { int min; Comparable temp; for (int index = 0; index