2014-11-11 4 views
-4

У меня есть массив из 20 элементов.Массив из случайных объектов массива

myArray = @[ obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12, obj13, obj14, obj15, obj16, obj17, obj18, obj19, obj20]; 

Мне нужно случайно получить 10 из этих элементов и поместить их в другой массив. Как мне архивировать это?

+1

'arc4random_uniform()', 'for' loops и' - [NSMutableArray addObject:] 'ваши друзья. И документация. И Google. –

+2

Сделайте [Fisher-Yates] (http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle) перетасовать и выбрать первые 10 элементов. – vcsjones

ответ

0

В принципе, используйте arc4random для генерации случайного числа с диапазоном array.count в цикле for, который выполняет итерацию 10 раз. Внутри цикла выберите элемент в indexRandomNumber, удалите из массива и вставьте в новый массив.

Основные вещи. Кроме того, вы можете сортировать или перетасовывать массив (vcsjones) и захватывать первые 10 элементов.

Смежные вопросы