Я пытаюсь написать код, чтобы обратить вспять увеличивающиеся подмассивы в Java в том же массиве (новый массив не создан). Например, вход массива items {2, 3, 4, 2, 1, 2, 3, 7, 8}
должен вывести {4, 3, 2, 2, 8, 7, 3, 2, 1}
. Мой код пока полностью изменяет первый увеличивающийся подмассив, но элементы прошлого, которые, кажется, не зацикливаются.
Вот мой код:
public static void reverse(int[] items)
{
int start = 0;
int count = 0;
for (int i = 1; i < items.length; i++)
{
if (items[i] > items[i-1])
{
if (count < 1)
{
start = i-1;
count ++;
}
else
{
count ++;
}
}
else
{
int j, k;
for (j = start; j < count/2; j++)
{
k = items[j];
items[j] = items[count - j];
items[count - j] = k;
j++;
}
count = 0;
}
}
output:
```{4, 3, 2, 2, 1, 2, 3, 7, 8}```