Python にはコレクション ライブラリがあります。私の Web アプリケーションでは、最も一般的なアイテムcollections.Counter(aList).most_common([n])
を返すために使用しています。n
aList
素晴らしく、簡潔で、適度に高速です。
今、私は iOS アプリケーションに取り組んでいます。Objective-C または Cocoa フレームワークで、文字列の配列に対して同じ機能を提供できるものはありますか?
aList
は のNSArrary
であると仮定しNSStrings
ます。
NSMutableDictionary *aCounter = [NSMutableDictionary dictionaryWithCapacity:[aList count]];
for aString in aList {
NSUInteger keyCount = [aCounter valueForKey:aString];
if keyCount == nil {
[aCounter setValue:1 forKey:aString];
}
else {
[aCounter setValue:(keyCount+1) forKey:aString];
}
これを凝縮するか、パフォーマンスを向上させるための提案はありますか?