Question

In: Computer Science

public class Problem1 {    public static void partition(int[] A)    {        /*Rearrange the...


public class Problem1 {

   public static void partition(int[] A)
   {
       /*Rearrange the array to have the following property:
       Suppose the first element in the original array has the value x.
       In the new array, suppose that x is in position i, that is data[i] = x.
       Then, data[j] <= x for all j < I and data[j] > x for all j > i.
       Thus, informally, all the values to the "left" of x are less than (or equal to) x
       and all values to the right are larger than x.
       */
       // Complete this method
      
      
      
   }
  

  
   public static void main(String[] args) {
       // TODO Auto-generated method stub

      
       int[] A = {4,3,9,2,7,6,5};
      
       System.out.println("Before partition:");
       for(int i = 0; i < A.length; i++)
       {
           System.out.print(A[i] + " ");
          
       }
      
       partition(A);
      
       System.out.println("After partition:");
      
       System.out.println("Before partition:");
       for(int i = 0; i < A.length; i++)
       {
           System.out.print(A[i] + " ");
          
       }
      
      
      
   }

}

Solutions

Expert Solution

CODE:

public class Main
{

public static void partition(int[] A)
{
/*Rearrange the array to have the following property:
Suppose the first element in the original array has the value x.
In the new array, suppose that x is in position i, that is data[i] = x.
Then, data[j] <= x for all j < I and data[j] > x for all j > i.
Thus, informally, all the values to the "left" of x are less than (or equal to) x
and all values to the right are larger than x.
*/
int i=1;
for (int j = 1; j < A.length; ++j)
{
if (A[j] <= A[0])
{
int temp=A[i];
A[i]=A[j];
A[j]=temp;
++i;
}
}
int temp=A[i-1];
A[i-1]=A[0];
A[0]=temp;
}
  

  
public static void main(String[] args) {
// TODO Auto-generated method stub

  
int[] A = {4,3,9,2,7,6,5};
  
System.out.println("Before partition:");
for(int i = 0; i < A.length; i++)
{
System.out.print(A[i] + " ");
  
}
  
partition(A);
  
System.out.println("\nAfter partition:");
  
for(int i = 0; i < A.length; i++)
{
System.out.print(A[i] + " ");
  
}
  
  
  
}

}

OUTPUT:


Related Solutions

public class Main { public static void main(String [] args) { int [] array1 = {5,...
public class Main { public static void main(String [] args) { int [] array1 = {5, 8, 34, 7, 2, 46, 53, 12, 24, 65}; int numElements = 10; System.out.println("Part 1"); // Part 1 // Enter the statement to print the numbers in index 5 and index 8 // put a space in between the two numbers and a new line at the end // Enter the statement to print the numbers 8 and 53 from the array above //...
---------------------------------------------------------------------------- public class Main { public static void main(String[] args) { int[] A = {11, 12,...
---------------------------------------------------------------------------- public class Main { public static void main(String[] args) { int[] A = {11, 12, -10, 13, 9, 12, 14, 15, -20, 0}; System.out.println("The maximum is "+Max(A)); System.out.println("The summation is "+Sum(A)); } static int Max(int[] A) { int max = A[0]; for (int i = 1; i < A.length; i++) { if (A[i] > max) { max = A[i]; } } return max; } static int Sum(int[] B){ int sum = 0; for(int i = 0; i --------------------------------------------------------------------------------------------------------------------------- Convert...
import javax.swing.JOptionPane; public class RandomGuess { public static void main(String[] args) { int guess; int result;...
import javax.swing.JOptionPane; public class RandomGuess { public static void main(String[] args) { int guess; int result; String msg; final int LOW = 1; final int HIGH = 10; result = LOW + (int)(Math.random() * HIGH); guess = Integer.parseInt(JOptionPane.showInputDialog(null, "Try to guess my number between " + LOW + " and " + HIGH)); if(guess == result) msg = "\nRight!"; else if(guess < result) msg = "\nYour guess was too low"; else msg = "\nYour guess was too high"; JOptionPane.showMessageDialog(null,"The number...
class ArrayReverse1{ public static void reverse(int[] a, int index) { if (index >0) { index= index...
class ArrayReverse1{ public static void reverse(int[] a, int index) { if (index >0) { index= index - 1; // Decrementing the index System.out.printf("%d%n", a[index]); reverse(a, index); // Recursive call } return; } public static void main (String args[]) { int [] array = { 1, 2, 3, 4, 5 }; int n=array.length; reverse(array,n); // function call } } Write a generic version of the corrected recursive reverse method that could be used to print any of the following arrays (or...
class Main { public static void main(String[] args) {        int[] array = {1,2,3,4,5};   ...
class Main { public static void main(String[] args) {        int[] array = {1,2,3,4,5};        //Complexity Analysis //Instructions: Print the time complexity of method Q1_3 with respect to n=Size of input array. For example, if the complexity of the //algorithm is Big O nlogn, add the following code where specified: System.out.println("O(nlogn)"); //TODO }    public static void Q1_3(int[] array){ int count = 0; for(int i = 0; i < array.length; i++){ for(int j = i; j < array.length;...
rite a method with the following header: public static void showGradeDistribution(int a, int b, int c,...
rite a method with the following header: public static void showGradeDistribution(int a, int b, int c, int d, int f) It should print a graph (using asterisks) for each of the letters entered in the reverse order of the parameter list and with a label. In addition, if A and B grades sum is equal or exceeds that of grades C and D and F, the message “Strong class!” should be displayed. For example a method call of: showGradeDistribution(5,7,4,4,3); Would...
Write a method with the following header: public static void showGradeDistribution(int a, int b, int c,...
Write a method with the following header: public static void showGradeDistribution(int a, int b, int c, int d, int f) It should print a graph (using asterisks) for each of the letters entered in the reverse order of the parameter list and with a label. In addition, if A and B grades sum is equal or exceeds that of grades C and D and F, the message “Strong class!” should be displayed. For example a method call of: showGradeDistribution(5,7,4,4,3); Would...
class Main { public static void main(String[] args) { int[] array = {1,2,3,4,5}; //Complexity Analysis //Instructions:...
class Main { public static void main(String[] args) { int[] array = {1,2,3,4,5}; //Complexity Analysis //Instructions: Print to n=Size of input array. For example, if the complexity of the //algorithm is Big O nlogn, add the following code where specified: System.out.println("O(nlogn)"); //code here } public static void (int[] array) { int count = 0; for(int i = 0; i < array.length; i++) { for(int j = i; j < array.length; j++) { for(int k = j; k < array.length; k++)...
JAVA please write this method public static void recursiveSelectionSort(int[] arr) { }
JAVA please write this method public static void recursiveSelectionSort(int[] arr) { }
JAVA please write this method public static void recursiveMergeSort(int[] arr) { }
JAVA please write this method public static void recursiveMergeSort(int[] arr) { }
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT