У меня есть NSDictionary с ключом, представляющим собой страну и объект, представляющий собой массив городов:
United States
New York
Portland
Austin
San Francisco
India
New Delhi
Belgium
Antwerp
Brussels
Я хотел бы создать словарь из этого словаря, который выглядит так:
United States
4
Belgium
2
India
1
Таким образом, сортируется от наибольшего количества ключей к наименьшему количеству ключей, а новый ключ - это количество ключей в исходном словаре. Это возможно? Какой способ будет наиболее эффективным?
Самое дальнее, что я получил, - это использовать
NSComparator sorter = ^NSComparisonResult(id a, id b)
{
NSArray* a1 = a;
NSArray* a2 = b;
if([a1 count] > [a2 count]) return NSOrderedAscending;
if([a1 count] < [a2 count]) return NSOrderedDescending;
return NSOrderedSame;
}
NSArray* ordered = [dictionary keysSortedByValueUsingComparator:sorter];
Но тогда у меня есть только упорядоченный массив, а не значения, прикрепленные к этому массиву.
Заранее спасибо!