Алгоритм тасования Фишера-Йетса

Рустам Бакытов

Здравствуйте Уважаемые Программисты киберфорума... В паутине поискал и не нашел что нужно... Я новичок пишу учусь так сказать... Дайте пожалуйста совет: есть массив из PictureBox:
    array<PictureBox^>^select = gcnew array<PictureBox^>(15){
            pictureBox3,pictureBox4,pictureBox5,pictureBox6,pictureBox7,
            pictureBox8,pictureBox9,pictureBox10,pictureBox11,pictureBox12,
            pictureBox13,pictureBox14,pictureBox15,pictureBox16,pictureBox17};
            for(int i=0;i<=select->Length;i++)
                 {
                    int rndIndex = rand->Next(select->Length);
                      Point tempLocation = pictureBox18->Location;
                    pictureBox18->Location=select[rndIndex]->Location;
                     select[rndIndex]->Location=tempLocation;
                                         
                    
                 }
Они движуться рандомно мне хотелось бы добавить алгоритм тасования Фишера-Йетса так будет оригиналнее... То ли я должен каждый раз извлекать рандомный элемент или создать новый массив из выбранных(рандом) элементов и проверять их незнаю..? Как мне быть? Если не хотите написать код для Новичка..)) Дайте совет..
1 ответ

Рустам Бакытов

Рустам Бакытов, реализуй сначала этот алгоритм для массива чисел, а потом переходи на PitctureBox-ы