Не без некоторых дополнительных структур данных.
Все операции сортировки NSArray (sortUsingDescriptors :, sortedArrayUsingSelector: и т. Д.) Предполагают, что вы можете посмотреть на два элемента "a" и "b" и определить, является ли "a
Одним из решений было бы создание нового массива, чьи объекты-члены содержат и значение, и счетчик частоты (используйте NSDictionary для эффективного подсчета количества строк для каждого значения). Например:
Array( // {value, frequency}
{3,3},
{2,1},
{1,1},
{3,3},
{3,3},
{7,1}
)
Тогда легко использовать дескриптор для сортировки этого массива по частоте.