@atul... can u point out where sorting is not working ? any case ?

--


Amol Sharma
Final Year Student
Computer Science and Engineering
MNNIT Allahabad

<http://gplus.to/amolsharma99>
<http://twitter.com/amolsharma99><http://in.linkedin.com/pub/amol-sharma/21/79b/507><http://www.simplyamol.blogspot.com/><http://facebook.com/amolsharma99>






On Mon, Jul 2, 2012 at 12:12 PM, Hassan Monfared <hmonfa...@gmail.com>wrote:

> I think O(N) space or O(nlogn) [stable nlogn sort : like stable merge sort
> ) time is required.
> ( I provided O(n^2) time and O(1) space before )
>
>
>
> On Mon, Jul 2, 2012 at 10:24 AM, atul anand <atul.87fri...@gmail.com>wrote:
>
>> @amol : even if your algo wont work for this...until and unless you use
>> extra space...
>> but your sorting algo is not working.
>>
>> On Sun, Jul 1, 2012 at 11:08 PM, Amol Sharma <amolsharm...@gmail.com>wrote:
>>
>>> i think it has been discussed before....nevertheless here is the
>>> required linear time solution.
>>>
>>> first, count the total number 0's and 1's in the array.
>>>
>>> let say, total elements are n and there are x zero's.
>>>
>>> take count1=0 and count2=x;
>>>
>>> traverse through the array :
>>> for(i=0;i<n;i++)
>>>         if(arr[i]==0)
>>>               arr[i]=count1++;
>>>         else
>>>               arr[i]=count2++;
>>>
>>> let's say array is {1,0,0,0,1,1,1,0,0,1}          n=10,x=5
>>> count1=0;count2=5
>>>
>>> after the traversal it becomes a[]={5,0,1,2,6,7,8,3,4,9}
>>>
>>> now sort this array in O(n) like this :
>>>
>>> for(j=0;j<=1;j++)
>>> {
>>>         for(i=0;i<n;i++)
>>>         {
>>>               if(arr[i]!=i)
>>>                    swap(arr[i],arr[arr[i]]);
>>>         }
>>> }
>>>
>>> after the array is sorted again traverse the array and set the elements
>>> from index 0 to x-1 to '0' and rest '1'.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> --
>>>
>>>
>>> Amol Sharma
>>> Final Year Student
>>> Computer Science and Engineering
>>> MNNIT Allahabad
>>>
>>> <http://gplus.to/amolsharma99> 
>>> <http://twitter.com/amolsharma99><http://in.linkedin.com/pub/amol-sharma/21/79b/507><http://www.simplyamol.blogspot.com/><http://facebook.com/amolsharma99>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Fri, Jun 29, 2012 at 9:20 PM, Bhaskar Kushwaha <
>>> bhaskar.kushwaha2...@gmail.com> wrote:
>>>
>>>> @Hassan I think your algo will take time O(n^2) in worst case which
>>>> occurs when all elements are negative except the last one
>>>> @everyone Can we solve this problem in linear time?
>>>>
>>>>
>>>> On Fri, Jun 29, 2012 at 9:10 PM, Hassan Monfared 
>>>> <hmonfa...@gmail.com>wrote:
>>>>
>>>>> Hi,
>>>>> this can be done by simple modification in bubble sort :
>>>>> void inplace_pos_neg(int pdata[],int sz)
>>>>> {
>>>>> bool changed=false;
>>>>>  do
>>>>> {
>>>>> changed=false;
>>>>>  for(int i=1;i<sz;i++)
>>>>> if(pdata[i-1]>0 && pdata[i]<0)
>>>>> {
>>>>>  swap(pdata[i-1], pdata[i]);
>>>>> changed=true;
>>>>> }
>>>>>  }while(changed);
>>>>> }
>>>>>
>>>>> void test_inplace_pos_neg()
>>>>> {
>>>>> int a[]={-1,-5,10,11,15,-500,200,-10};
>>>>>
>>>>> copy(a,a+sizeof(a)/sizeof(int),ostream_iterator<int>(cout,","));cout<<endl;
>>>>> inplace_pos_neg(a,sizeof(a)/sizeof(int));
>>>>>
>>>>> copy(a,a+sizeof(a)/sizeof(int),ostream_iterator<int>(cout,","));cout<<endl;
>>>>>
>>>>> }
>>>>>
>>>>>
>>>>> Regards
>>>>>
>>>>> On Fri, Jun 29, 2012 at 7:52 PM, utsav sharma <
>>>>> utsav.sharm...@gmail.com> wrote:
>>>>>
>>>>>> @bhaskar:- please explain stable sorting algorithm you would use(as
>>>>>> mainly all of them require extra space)
>>>>>> @sourabh:- that previous post discussion does't lead to any correct
>>>>>> soln
>>>>>>
>>>>>> On Fri, Jun 29, 2012 at 8:39 PM, Bhaskar Kushwaha <
>>>>>> bhaskar.kushwaha2...@gmail.com> wrote:
>>>>>>
>>>>>>> @saurabh please provide the link to the post you are mentioning
>>>>>>>
>>>>>>> On Fri, Jun 29, 2012 at 8:38 PM, Bhaskar Kushwaha <
>>>>>>> bhaskar.kushwaha2...@gmail.com> wrote:
>>>>>>>
>>>>>>>>  If the order is important then I think we can use any stable
>>>>>>>> sorting algorithm with the following comparison function
>>>>>>>>
>>>>>>>> int compare (int a ,int b)
>>>>>>>> {
>>>>>>>> if((a>0&&b>0)||(a<0&&b<0)) return 0;
>>>>>>>> else return a<b;
>>>>>>>> }
>>>>>>>> On Fri, Jun 29, 2012 at 3:37 PM, raghavan M <
>>>>>>>> peacelover1987...@yahoo.co.in> wrote:
>>>>>>>>
>>>>>>>>> This is a variant of that one
>>>>>>>>>
>>>>>>>>>   ------------------------------
>>>>>>>>> *From:* saurabh singh <saurab...@gmail.com>
>>>>>>>>> *To:* algogeeks@googlegroups.com
>>>>>>>>> *Sent:* Friday, 29 June 2012 3:05 PM
>>>>>>>>>
>>>>>>>>> *Subject:* Re: [algogeeks] MS Question: Segregrate positive and
>>>>>>>>> negative nos in array without changing order
>>>>>>>>>
>>>>>>>>> duplicate of a previous post.Kindly refer to that post.
>>>>>>>>> Saurabh Singh
>>>>>>>>> B.Tech (Computer Science)
>>>>>>>>> MNNIT
>>>>>>>>> blog:geekinessthecoolway.blogspot.com
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Jun 29, 2012 at 10:41 AM, raghavan M <
>>>>>>>>> peacelover1987...@yahoo.co.in> wrote:
>>>>>>>>>
>>>>>>>>> Hi
>>>>>>>>> Question as in subject
>>>>>>>>>
>>>>>>>>> *No extra space (can use one extra space)-O(1) max
>>>>>>>>> *No order change allowed
>>>>>>>>> example:
>>>>>>>>>
>>>>>>>>> input : 1,-5,2,10,-100,-2
>>>>>>>>> output: -5,-10,-100,1,2
>>>>>>>>>
>>>>>>>>> input : -1,-5,10,11,15,-500,200,-10
>>>>>>>>> output : -1,-5,-10,-500,-10,10,11,15
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>> Raghavn
>>>>>>>>>  --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups "Algorithm Geeks" group.
>>>>>>>>> To post to this group, send email to algogeeks@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.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups "Algorithm Geeks" group.
>>>>>>>>> To post to this group, send email to algogeeks@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.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>   --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups "Algorithm Geeks" group.
>>>>>>>>> To post to this group, send email to algogeeks@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.
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> regards,
>>>>>>>> Bhaskar Kushwaha
>>>>>>>> Student
>>>>>>>> Final year
>>>>>>>> CSE
>>>>>>>> M.N.N.I.T.  Allahabad
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> regards,
>>>>>>> Bhaskar Kushwaha
>>>>>>> Student
>>>>>>> Final year
>>>>>>> CSE
>>>>>>> M.N.N.I.T.  Allahabad
>>>>>>>
>>>>>>>  --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Algorithm Geeks" group.
>>>>>>> To post to this group, send email to algogeeks@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.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Utsav Sharma,
>>>>>> NIT Allahabad
>>>>>>
>>>>>>  --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "Algorithm Geeks" group.
>>>>>> To post to this group, send email to algogeeks@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.
>>>>>>
>>>>>
>>>>>  --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Algorithm Geeks" group.
>>>>> To post to this group, send email to algogeeks@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.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> regards,
>>>> Bhaskar Kushwaha
>>>> Student
>>>> Final year
>>>> CSE
>>>> M.N.N.I.T.  Allahabad
>>>>
>>>>  --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Algorithm Geeks" group.
>>>> To post to this group, send email to algogeeks@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.
>>>>
>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "Algorithm Geeks" group.
>>> To post to this group, send email to algogeeks@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.
>>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Algorithm Geeks" group.
>> To post to this group, send email to algogeeks@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.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to algogeeks@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.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@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