n = size of num
i = 0
j = n-1
while(i < j) {
c = num[i] + num[j]
if(c < given number) i++
else if(c > given number) j--
else show<i,j> and j--
}
2006/4/21, iwgmsft <[EMAIL PROTECTED]>:
>
> one of microsoft interview question....if anybody interested
>
> in given array int num[10]={1,-5,6,7,9,9,20,25,31,45} it is a sorted
> array.
> write a function void findsum(int [],int x)
> int [] is array and x is number.
> function should print all possible pair of elements in array that can
> make a sum equal to x.
> for example if value of x is 26
> then function should print
> 1,25
> 25,1
> -5,31
> 31,-5
> Function should be implemented using O(N) or O(2N) approach try to
> avoid using O(N 2) approach(Means avoid nested loop).
>
>
> >
>
--
myblog: http://gnor.net/daizisheng/blog/
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---