Sort an array of 0s, 1s and 2s in O(n) time and O(1) space.
Click for Solution

  • Warning: Illegal string offset 'name' in /home/prepdo6/gpl4you/discussquessub.php on line 681
    A #include<stdio.h> #include<conio.h> void main() { int a[]={0,0,2,2,1,1,0,2,1,1,0,0,0,2,1}; int ze=0,on=0,tw=0,i; clrscr(); for(i=0;i<15;i++) { if(a[i]==0) ze++; else if(a[i]==1) on++; else tw++; } for(i=0;i<ze;i++) a[i]=0; for(i=ze;i<(ze+on);i++) a[i]=1; for(i=(ze+on);i<(ze+on+tw);i++) a[i]=2; for(i=0;i<15;i++) { if(i<ze) a[i]=0; else if(i<ze+on) a[i]=1; else a[i]=2; } for(i=0;i<15;i++) printf("%d",a[i]); getch(); }

[Insert Code]