현재 개체가 NSArray (정렬되지 않음)에 있는지 여부를 검색하려고합니다. 내 기대에 맞는 것을 찾을 때까지 배열을 반복하고 각 객체를 확인해야합니다.NSArray에 무언가가 있는지 검색하는 빠른 방법이 있습니까?
수표가 if 문일지라도 성능은 의심 스럽습니다.
검색 성능을 향상 시키려면 제공된 솔루션이 있습니까?
아니면 배열을 어떤 식 으로든 정렬하고 이진 검색과 같은 방법으로 사용할 수 있습니까?
현재 개체가 NSArray (정렬되지 않음)에 있는지 여부를 검색하려고합니다. 내 기대에 맞는 것을 찾을 때까지 배열을 반복하고 각 객체를 확인해야합니다.NSArray에 무언가가 있는지 검색하는 빠른 방법이 있습니까?
수표가 if 문일지라도 성능은 의심 스럽습니다.
검색 성능을 향상 시키려면 제공된 솔루션이 있습니까?
아니면 배열을 어떤 식 으로든 정렬하고 이진 검색과 같은 방법으로 사용할 수 있습니까?
비교를 기반으로하는 정렬은 O (n * log (n)) 시간이 걸리므로 배열을 반복 할 때마다 O (n) 시간이 걸립니다 배열의 n 요소의 경우.
실용적인 해결책은 객체를 이미 알고있는 경우 NSArray # containsObject를 사용하는 것입니다.
그렇지 않으면 당신은 당신의 자신의 비교 전략을 구현하고 배열
당신이 빠른 열거를 사용하여 단계별로해야합니다. 예 :
NSEnumerator * enumerator = [set objectEnumerator];
NSNumber *setObject ;
while ((setObject = [enumerator nextObject]) != nil){
[gids appendString:[NSString stringWithFormat:@"%d",[setObject intValue]]];
}
이것은 루프하는 법을 알려줍니다. 검색과는 아무런 관련이 없습니다. – Chuck