bartleby

Videos

Expert Solution & Answer
Book Icon
Chapter 7, Problem 16E

Explanation of Solution

Modified method definition for “selectionSort” method in Listing 7.10:

The modified method definition for “selectionSort” is given below:

/* Method definition for sorting the array using selection sort */

public static void selectionSort(int[] anArray, int first, int last)

{

/* Check the condition using "while" loop. The loop will perform up to "first <= last" */

    while(first <= last)

    {

/* Put the exact value in anArray[index]. Call the method "getIndexOfSmallest" with argument "first" and "anArray" and store the result into "indexOfNextSmallest" */          

int indexOfNextSmallest = getIndexOfSmallest(first, anArray);

/* Call the method "interchange" with given three arguments */

interchange(first, indexOfNextSmallest, anArray);

        /* Increment index of "first" */

        first++;

    }

}

Explanation:

The above method “selectionSort” is used to sort an array whose indices range from “first” to “last”.

  • • The method “selectionSort” contains three arguments “anArray”, “first” and “last”.
    • ○ First check the condition using “while” loop. This loop performs up to “first <= last”.
      • ■ Put the exact value in “anArray[index]”. Call the method “getIndexOfSmallest” with argument “first” and “anArray” and store the result into “indexOfNextSmallest”.
      • ■ Call the method “interchange” with given three arguments.
      • ■ Increment the index value of “first”.

Complete program:

The complete executable code for after modifying the “selectionSort” method of class “ArraySorter” in Listing 7.10 is given below:

Modified “ArraySorter.java”

/* Define "ArraySorter" class */

public class ArraySorter

{

/* Method definition for sorting the array using selection sort */

public static void selectionSort(int[] anArray, int first, int last)

    {

/* Check the condition using "while" loop. The loop will perform up to "first <= last" */

        while(first <= last)

        {

/* Put the exact value in anArray[index]. Call the method "getIndexOfSmallest" with argument "first" and "anArray" and store the result into "indexOfNextSmallest" */         

int indexOfNextSmallest = getIndexOfSmallest(first, anArray);

/* Call the method "interchange" with given three arguments */

interchange(first, indexOfNextSmallest, anArray);

            /* Increment index of "first" */

            first++;

        }

    }

/** 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. */

/* Method definition for gets index of smallest element */

private static int getIndexOfSmallest(int startIndex, int[] a)

    {

        /* Assign minimum value */

        int min = a[startIndex];

        /* Assign index of minimum value */

        int indexOfMin = startIndex;

/* Compute the index of minimum value using "for" loop */

for (int index = startIndex + 1; index < a.length; index++)

        {

            if (a[index] < min)

            {

                min = a[index];

                indexOfMin = index;

// Assertion: min is smallest of a[startIndex] through a[index]

            }

        }

        /* Return index of minimum element */

        return indexOfMin;

    }

/** Precondition: i and j are valid indices for the array a...

Blurred answer
Students have asked these similar questions
Q4. Consider the following two design alternatives. Walmart Walmart Store locartion 1 * capacity - Associate Name 1 id position Design Alternative "A" Store locartion 1 capacity Associate Name 1 * id position Design Alternative "B" a) Explain the semantic differences between the two designs, if any. b) Explain the differences in how each design alternative may be implemented in Java. c) which design alternative may require more storage requirement in your opinion, and why?
Design a schematic for a compartmental model that includes compartments, flows, and parameters with their respective units, using Figure 1 as a guide. For each flow, determine whether it is best represented by a first-order transfer, a Michaelis-Menten saturable process, or a different method.
9. Consider the diagram on the right. Using this diagram and the four following terms: (a) lonization Energy, (b) Electron Affinity, (c) Mulliken Electronegativity, and (d) Polarizability, label each arrow with the correct term (you can label the arrows with the corresponding letter for space purposes). Please provide labels for both species X and Y. lonization Limit b) Indicate why. Energy- Species X Species Y Which species (X or Y) has the highest electronegativity? Which has the largest polarizability? c)( 2) Consider BH3 (boron trihydride) and TIH3 (thallium trihydride). Which one is more polarizable and why? Which one would have stronger intermolecular forces and why?

Chapter 7 Solutions

Java: An Introduction to Problem Solving and Programming plus MyProgrammingLab with Pearson eText -- Access Card Package (7th Edition)

Additional Engineering Textbook Solutions

Find more solutions based on key concepts
Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:9781305503922
Author:Patrick M. Carey
Publisher:Cengage Learning
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Definition of Array; Author: Neso Academy;https://www.youtube.com/watch?v=55l-aZ7_F24;License: Standard Youtube License