kchronis
BAN USER-(BOOL)checkSumInArray:(NSArray *)myArray isEqualTo:(NSInteger)k{
int front = 0;
int back = [myArray count]-1;
BOOL result = NO;
//sort array
[myArray sortedArrayUsingSelector: @selector(compare:)];
while (front < back) {
NSInteger sum = [myArray[front] integerValue] + [myArray[back] integerValue];
if (sum == k) {
result = YES;
break;
}
else if (sum > k){
back--;
continue;
}
else{
front++;
continue;
}
}
return result;
}
-(NSArray *)mergeFirstSortedArray:(NSArray *)firstArray withSecondSortedArray:(NSArray *)secondArray{
NSMutableArray *secondMutable = [secondArray mutableCopy];
NSInteger secondArrayCount = [secondArray count];
NSInteger currentIndex = 0;
for (NSNumber *num in firstArray) {
while (currentIndex < secondArrayCount) {
if ([num integerValue] < [secondMutable[currentIndex] integerValue]) {
[secondMutable insertObject:num atIndex:currentIndex];
currentIndex++;
break;
}
else{
currentIndex++;
}
}
}
return secondMutable;
}
- kchronis October 29, 2013