public class Reverser Demonstrate a method that returns an

public class Reverser
{
// Demonstrate a method that returns an array

public static int[] reverse(int[] a)
{
int[] newArray = new int[a.length];
for (int i = 0; i < a.length; i++)
newArray[(a.length-1) - i] = a[i];
// fill newArray from end to beginning
return newArray;
}

// TODO: write a void method reverse2 that reverses
// an array in place by changing its contents
// this can be done with a for loop or by reusing
// the reverse method to create a new reversed
// array and then copying its contents into the
// original array; test that this works in main

private static void display(String header, int[] a)
{
if (header.length() != 0)
System.out.print(header + \" \");
for (int i = 0; i < a.length; i++)
System.out.print(a[i] + \" \");
System.out.println();
System.out.println();
}

    public static void main(String[] args)
{
int[] example = { 0, 1, 2, 3, 4, 5 };
display(\"Before reversing:\", example);
example = reverse(example);
// change the array that example refers to
display(\"After reversing: \", example);

// write a test for reverse2 here
}
}
------------------------------------------------------
Copy Reverser.java, containing the reverse method, to Reverser2.java and write and test a reverse2() method:
------------------------------------------------------
reverse2 should have
the following header:

          public
static void reverse2(int[] a)
------------------------------------------------------
reverse2 should reverse
the array a passed into the method in place, that is, it will not
return a new array, but instead will replace the contents of the original array
with its same items, but in reverse order.
-------------------------------------------
Hints: there are at
least two possible ways to approach this:
Simple: Use reverse() to create a new array
with the a array’s elements in reverse order, and copy them into a
Complex: Use a for loop as in reverse(),
but only go through ½ of the a array, and swap elements from start to
end (you might want to write a swap() method to help with this)

Solution

Please find the required program along with its output. Please see the comments against each line to understand the step.

----------------------------------------------------

OUTPUT:

Before reversing: 0 1 2 3 4 5

After reversing: 5 4 3 2 1 0

Before reversing: 0 1 2 3 4 5

After reversing: 5 4 3 2 1 0

public class Reverser { // Demonstrate a method that returns an array public static int[] reverse(int[] a) { int[] newArray = new int[a.length]; for (int i = 0;

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site