Как перемешать массив размером N без импорта - PullRequest
1 голос
/ 05 мая 2019

Цель состоит в том, чтобы перетасовать массив размером N.В коде нельзя использовать импорт.то есть Random

Я могу легко сделать это, используя импорт, как показано ниже, хотя это запрещено.

private static void shuffleArray(int[] array)
  {
      int index, temp;
      Random random = new Random();
      for (int i = array.length - 1; i > 0; i--)
      {
          index = random.nextInt(i + 1);
          temp = array[index];
          array[index] = array[i];
          array[i] = temp;
      }
  }

Конечная цель - перетасовать массив в случайном порядке.Псевдослучайный прекрасно.

1 Ответ

0 голосов
/ 05 мая 2019
int []a = new int[]{1,2,3,4,5,6,7,8,9};
for (int i = 0 ; i < a.length; i++)
{
    int index = (int)(System.nanoTime() % a.length);
    int tmp = a[index];
    a[index] = a[i];
    a[i] = tmp;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...