On 15 Apr 2014, at 10:02 am, Varun Chandramohan <varun.chandramo...@wontok.com> 
wrote:

> Lets say I walkthrough 1000 files and folders, for each file/folder I need to 
> compare against this array list. This might be slow or inefficient. Is there 
> a faster way to do something like this?


As a general principle, if you have to check whether one of a list of things is 
part of another list of things, an array is the wrong container for the job, 
because it amounts to a worst-case O(n^2) search. Instead, use a set or hash 
table for the set of things that must be detected among the first list, and it 
reduces to a worst-case O(n) operation. That said, if the number of items in 
the second list is small, the performance may be acceptable, and using a hash 
table might not speed it up noticeably - the time will be dominated by the 
iteration through the larger list.

--Graham



_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to