@Tech: Let the array be a[n] and the number you are searching for be
x. It is going to take at least abs( a[i] - x ) steps from the current
position before a[i] can possibly equal x. Therefore,
int searchStepArray( int x, int n, int a[])
{
int i=0;
while( i < n && a[i] != x )
i += abs( a[i] - x );
return i < n ? i : -1 // return -1 for failure
}
Dave
On Aug 29, 10:54 pm, tech coder <[email protected]> wrote:
> There is an array and the distance between any two consequent elements is
> one(+1 or -1) and given a number. You have to check whether the number is in
> array or not with minimum complexity.
--
You received this message because you are subscribed to the Google Groups
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/algogeeks?hl=en.