@Rais: I don't see that it leaves the array unchanged if the number of
zeros does not equal the number of ones.

Dave

On Aug 19, 7:23 am, Rais Khan <raiskhan.i...@gmail.com> wrote:
> void ArrayShifting(int *str, int size)
> {
>     int odd=1, even=0;
>     while(odd < size)
>     {
>         int position;
>         if(str[even]!=0)
>         {
>             position = even+1;
>             while(position < size)
>             {
>                 if(str[position]==0)
>                 { str[position]=1;str[even]=0;break;}
>                 position = position+2;
>             }
>         }
>         even = even+2;
>         if(str[odd]!=1)
>         {
>             position = odd+1;
>             while(position < size)
>             {
>                 if(str[k]==0)
>                 { str[position]=0;str[odd]=1;break;}
>                 position = position+2;
>             }
>         }
>         odd=odd+2;
>     }
>
> }
>
> This code seems working for me, If you agree then we can work on measuring
> the complexity & improving the code accordingly.
>
> On Thu, Aug 19, 2010 at 5:27 PM, Ashutosh Tamhankar 
> <asshuto...@gmail.com>wrote:
>
>
>
> > Hi Amit
>
> > Am I allowed to keep counters to count the number of 1's and 0s right?
>
> > The condition of not using extra memory is for the array!?
>
> > Regards
> > Ashutosh
>
> > 2010/8/18 amit <amitjaspal...@gmail.com>
>
> > you are given an array of integers containing only 0s and 1s. you have
> >> to place all the 0s in even position and 1s in odd position and if
> >> suppose no if 0s exceed no. of 1s or vice versa then keep them
> >> untouched. Do that in ONE PASS and WITHOUT taking EXTRA MEMORY.
>
> >> --
> >> You received this message because you are subscribed to the Google Groups
> >> "Algorithm Geeks" group.
> >> To post to this group, send email to algoge...@googlegroups.com.
> >> To unsubscribe from this group, send email to
> >> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups­.com>
> >> .
> >> For more options, visit this group at
> >>http://groups.google.com/group/algogeeks?hl=en.
>
> >  --
> > You received this message because you are subscribed to the Google Groups
> > "Algorithm Geeks" group.
> > To post to this group, send email to algoge...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups­.com>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/algogeeks?hl=en.- Hide quoted text -
>
> - Show quoted text -

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algoge...@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to