markbridges9
BAN USER- (BOOL)arrayContainsAnagrams:(NSArray*)arrayOfWords
{
BOOL containsAnagrams = FALSE;
for (NSString *word in arrayOfWords)
{
for (NSString *anotherWord in arrayOfWords)
{
if ((word != anotherWord) && (word.length>0) && (word.length == anotherWord.length))
{
BOOL foundAllLetters = TRUE;
for (int a = 0; a < word.length; a++)
{
NSString *subString = [word substringWithRange:NSMakeRange(a, 1)];
if ([anotherWord rangeOfString:subString].location == NSNotFound)
{
foundAllLetters = FALSE;
break;
}
}
containsAnagrams = foundAllLetters;
}
}
}
return containsAnagrams;
}
- (BOOL)arrayContainsAnagrams:(NSArray*)arrayOfWords
{
BOOL containsAnagrams = FALSE;
for (NSString *word in arrayOfWords)
{
for (NSString *anotherWord in arrayOfWords)
{
if ((word != anotherWord) && (word.length>0) && (word.length == anotherWord.length))
{
BOOL foundAllLetters = TRUE;
for (int a = 0; a < word.length; a++)
{
NSString *subString = [word substringWithRange:NSMakeRange(a, 1)];
if ([anotherWord rangeOfString:subString].location == NSNotFound)
{
foundAllLetters = FALSE;
break;
}
}
containsAnagrams = foundAllLetters;
}
}
}
return containsAnagrams;
}
No idea what the complexity of this would be, but here's a dead simple solution.
@interface SampleHandler ()
@property (nonatomic, strong) NSMutableArray *numbers;
@end
@implementation SampleHandler
- (void)addNumber:(NSNumber*)number
{
[self.numbers addObject:number];
}
- (NSNumber*)median
{
return [[self.numbers sortedArrayUsingSelector:@selector(compare:)] objectAtIndex:[self.numbers count] / 2];
}
- (NSMutableArray*)numbers
{
if (_numbers == nil)
{
_numbers = [[NSMutableArray alloc]init];
}
return _numbers;
}
@end
- markbridges9 October 19, 2014