NSArray *arr = @[@1, @2, @5, @10];
NSLog(@"arr : %@",arr);
int result = [self searchIndexOfNumber: 5];
if(result == -1) {
NSLog(@"Number not found");
} else {
NSLog(@"Number found at index : %d", result);
}
----------------------------------------
-(int)searchIndexOfNumber: (int)number{
int result = -1;
int lower = 0;
int upper = (int)[arr count]-1;
while (lower <= upper) {
int mid = (lower + upper) / 2;
if([arr[mid] integerValue] < number) {
lower = mid + 1;
} else if([arr[mid] integerValue] == number){
result = mid;
break;
} else {
upper = mid - 1;
}
}
return result;
}
NSLog(@"arr : %@",arr);
int result = [self searchIndexOfNumber: 5];
if(result == -1) {
NSLog(@"Number not found");
} else {
NSLog(@"Number found at index : %d", result);
}
----------------------------------------
-(int)searchIndexOfNumber: (int)number{
int result = -1;
int lower = 0;
int upper = (int)[arr count]-1;
while (lower <= upper) {
int mid = (lower + upper) / 2;
if([arr[mid] integerValue] < number) {
lower = mid + 1;
} else if([arr[mid] integerValue] == number){
result = mid;
break;
} else {
upper = mid - 1;
}
}
return result;
}
No comments:
Post a Comment