in nlog(n) #include<iostream> #include<conio.h> #include<string.h> #define swap(a,b,c) (c)=(a),(a)=(b),(b)=(c) using namespace std; int t; void quicksort(char arr[],int left,int right) { if(left<right) { int piv=right; int i=left,j=left; while((i<right) && (j<right)) { if(arr[j]<arr[piv]) { swap(arr[i],arr[j],t); i++; } j++; } swap(arr[i],arr[piv],t); quicksort(arr,left,i-1); quicksort(arr,i+1,right); } } int main() { char str[100],t; int arr[100],i=0; cin>>str; int min=0; int len=strlen(str); while(str[i]) { if(str[i]<=str[min]) min=i; arr[i]=min; i++; } i=len-1; while((arr[i]==i)&&(i>0)) i--; swap(str[i],str[arr[i]],t);
if(i>0) quicksort(str,arr[i]+1,len-1); cout<<str; getch(); } On Thu, Sep 22, 2011 at 3:33 PM, Dheeraj Sharma <dheerajsharma1...@gmail.com > wrote: > #include<iostream> > #include<conio.h> > #include<string.h> > #define swap(a,b,c) (c)=(a),(a)=(b),(b)=(c) > using namespace std; > int main() > { > char str[100],t; > cin>>str; > > int len=strlen(str); > int i,x,boo=1; > for(i=len-1;i>0&&boo;i--) > { > for(x=i-1;x>=0&&boo;x--) > { > if(str[x]<str[i]) > { > swap(str[x],str[i],t); > boo=0; > } > } > } > if(i>0) > { > > //Sorting... > for(int l=x+2;l<len-1;l++) > { > int min=l; > for(int k=l+1;k<len;k++) > { > if(str[k]<str[min]) > min=k; > } > swap(str[min],str[l],t); > } > } > cout<<str; > > > getch(); > } > > > correct me..if m wrong.. > > > On Thu, Sep 22, 2011 at 2:01 PM, Ratan <success.rata...@gmail.com> wrote: > >> @dheeraj ... ya u r ryt.... thnxs for the correction >> >> On Thu, Sep 22, 2011 at 1:30 PM, Dheeraj Sharma >> <dheerajsharma1...@gmail.com> wrote: >> > @Ratan: >> > i think the next largest here would be 784559 >> > >> > On Thu, Sep 22, 2011 at 12:39 PM, Ratan <success.rata...@gmail.com> >> wrote: >> >> >> >> @kartik : to some extent ur code is giving the right answer... btw >> >> somehow check tis >> >> let for example the no be 759854 >> >> then the next biggest no is 794558 >> >> btw ur program is giving 795854 which is undoubtedly wrong............ >> >> the code would give more appropriate result if u sort the numbers from >> >> from i to n on meeting the condition of (a[i-1]<a[i]) >> >> >> >> On Thu, Sep 22, 2011 at 11:53 AM, Ramakant Sharma < >> ramakant...@gmail.com> >> >> wrote: >> >> > starting from right find first digit less then right most digit,if no >> >> > any >> >> > digit is less,then move to next right most and compair ,,,,when found >> >> > exchange those no, >> >> > now sort the no.s up to that index of the given no which is >> exchanged: >> >> > Ex: >> >> > 43987723893239876 >> >> > first required sequence: 439877238932[3]987[6] swap these no >> >> > 439877238932[6]{987[3]} >> >> > now sort in decreasing order 439877238932[6]{3789} this is the >> required >> >> > no >> >> > ....correct me if any thing wrong >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > -- >> >> > 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. >> >> > >> >> >> >> >> >> >> >> -- >> >> Ratan Kumar >> >> B. Tech >> >> MNNIT, >> >> 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. >> >> >> > >> > >> > >> > -- >> > Dheeraj Sharma >> > Comp Engg. >> > NIT Kurukshetra >> > >> > >> > -- >> > 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. >> > >> >> >> >> -- >> Ratan Kumar >> B. Tech >> MNNIT, >> 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. >> >> > > > -- > *Dheeraj Sharma* > Comp Engg. > NIT Kurukshetra > > > -- *Dheeraj Sharma* Comp Engg. NIT Kurukshetra -- 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.