Hi
i was in an interview and was given a simple function
int arrExsits(int* arr,int size,int elem){
for (int i=0;i<size;++i)
if(elem==arr[i])
return i;
return -1;
}
this function does 2n compares
n- the if statment
n-check that i is smaller then size
i was suppose to give an optimal (less compares) solution so i gave
int arrExsits(int* arr,int size,int elem){
if (arr[size-1]==elem)
return size-1;
arr[size-1]=elem]
for (int i=0;;++i)
if(elem==arr[i]){
if (i!=size-1)
return i;
return -1;
}
this solution works and it has n+2 compares the first one another n and the
second inner if.
they told me it's good (and I've passed) but they told just for my
knowledge that there is a better N compare solution.
I've searched the web but couldn't find it.
anybody knows?
Thanks
--
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.