Как рандомизировать двумерные массивы в C#

В этом примере используется следующий метод расширения для рандомизации двумерных массивов.

Чтобы рандомизировать двумерные массивы, код начинается с получения количества строк и столбцов в массиве и путем вычисления общего количества элементов, содержащихся в массиве. Затем он перебирает все ячейки массива с номером 0 через число элементов минус 1. Например, если массив имеет 20 элементов, тогда цикл работает от 0 до 19.

Для каждого индекса i в этом цикле код выбирает случайный индекс j больше или равен i. Затем код заменяет элементы на индексы i и j.

Единственный трюк здесь - вычисление строки и столбца для индексов i и j. Чтобы найти строку, код делит индекс на число столбцов в каждой строке. Поскольку все значения в вычислении являются целыми числами, деление является целым делением, поэтому результат усекается. Чтобы найти столбец, код принимает индекс mod число столбцов.

Источник: http://csharphelper.com/blog/2016/10/randomize-two-dimensional-arrays-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *