logo Practice-It logo

reverse3

Related Links:
Author: Stuart Reges (on 2020/10/08)

Write a method reverse3 that reverses each successive sequence of 3 values in a list of integers. For example, suppose that a variable list stores:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]

and we make the following call:

list.reverse3();

Afterwards the list should store the following sequence of values:

[3, 2, 1, 6, 5, 4, 9, 8, 7, 12, 11, 10, 15, 14, 13]

The first sequence of 3 values (1, 2, 3) has been reversed to be (3, 2, 1). The second sequence of 3 values (4, 5, 6) has been reverse to be (6, 5, 4). And so on. If the list has extra values that are not part of a sequence of 3, those values are unchanged. For example, if the list had instead stored:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17]

The result would have been:

[3, 2, 1, 6, 5, 4, 9, 8, 7, 12, 11, 10, 15, 14, 13, 16, 17]

Notice that the values (16, 17) are unchanged in position.

The list will not always contain sequential integers. The following list:

[3, 8, 19, 42, 7, 26, 19, -8, 193, 204, 6, -4, 99]

would be rearranged as follows:

[19, 8, 3, 26, 7, 42, 193, -8, 19, -4, 6, 204, 99]

Your method should not change the list if it has fewer than three values.

Type your solution here:


This is a partial class problem. Submit code that will become part of an existing Java class as described. You do not need to write the complete class, just the portion described in the problem.

You must log in before you can solve this problem.


Log In

If you do not understand how to solve a problem or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect problems/tests, etc.), please

Is there a problem? Contact a site administrator.