我有一個數組,每個字符串都是一個名稱。有些名字可能相同,有些可能不同。我正在使用的語言是Objective-C。我希望能夠從這個數組中找出哪個名字是最受歡迎的(該數組將根據用戶嚮應用程序提供的信息進行動態變化)。我不知道如何高效地做到這一點。如果有人可以擴大或提供一個例子,它將不勝感激。查找數組中的大部分重複對象
謝謝
例子:
NSArray *nameArray= [[NSArray alloc] initWithObjects @"james", @"megan", @"lauren", @"mike" @james", nil];
//james would be the most popular name
接受或勾選答案如果有幫助? –
看起來效率不高(正如op所問):我敢打賭,每個'[bag countForObject:]'都會遍歷整個數組,並且因爲您爲數組的每個元素執行操作,所以它是O(n^2)。 @Samir建議的方法看起來更好。 – Saphrosit
它也與整個數組中檢查數組中的每個字符串相同 –