@Navneet: Its not possible to solve this without a single tail pointer. I have come across this question saying it requires a single pointer and that pointer is the tail pointer. So along with head you need a tail pointer or a global pointer. Otherwise cannot keep track of header for reversed list.
On Sun, Jul 17, 2011 at 6:57 PM, Navneet <navneetn...@gmail.com> wrote: > I am looking for a solution with no 'tail' node available/static types > used etc. > > Also with algorithms given without above two conditions, i don't see > they doing the right thing for me. Maybe i need to check more. > > Have you guys tried to see if this is working for you? > > On Jul 17, 4:42 pm, bharath kannan <bharathgo...@gmail.com> wrote: > > node * reverse(node *head) > > { > > if(head->next) > > { > > node * temp=reverse(head->next); > > head->next->next=head; > > head->next=NULL; > > return temp; > > } > > return head; > > > > } > > > > On Sun, Jul 17, 2011 at 4:57 PM, Piyush Sinha <ecstasy.piy...@gmail.com > >wrote: > > > > > > > > > > > > > > > > > *node *reverse(node *head) > > > { > > > if(head==NULL) > > > return head; > > > if(head->next==NULL) > > > return head; > > > node *temp = reverse(head->next); > > > head->next->next = head; > > > head->next = NULL; > > > return (temp); > > > }* > > > > > On Sun, Jul 17, 2011 at 4:30 PM, Anika Jain <anika.jai...@gmail.com > >wrote: > > > > >> initial call to this will be rev(head); > > > > >> On Sun, Jul 17, 2011 at 4:28 PM, Anika Jain <anika.jai...@gmail.com > >wrote: > > > > >>> node *listing::rev(node *p) > > >>> { > > >>> if(p->next==NULL) > > >>> { > > >>> head=p; > > >>> return p; > > >>> } > > >>> else > > >>> { > > >>> node *t=rev(p->next); > > >>> t->next=p; > > >>> p->next=NULL; > > >>> tail=p; > > >>> return p; > > > > >>> } > > >>> } > > > > >>> On Sun, Jul 17, 2011 at 3:21 PM, Nishant Mittal < > > >>> mittal.nishan...@gmail.com> wrote: > > > > >>>> void rev_recursion(NODE **head) > > >>>> { > > >>>> if(*head==NULL) > > >>>> return; > > >>>> NODE *first, *rest; > > >>>> first=*head; > > >>>> rest=first->next; > > >>>> if(!rest) > > >>>> return; > > >>>> rev_recursion(&rest); > > >>>> first->next->next=first; > > >>>> first->next=NULL; > > >>>> *head=rest; > > > > >>>> } > > > > >>>> On Sun, Jul 17, 2011 at 2:53 PM, vaibhav shukla < > > >>>> vaibhav200...@gmail.com> wrote: > > > > >>>>> struct node *reverse_recurse(struct node *start) > > >>>>> { > > >>>>> if(start->next) > > >>>>> { > > >>>>> reverse_recurse(start->next); > > >>>>> start->next->next=start; > > >>>>> return(start); > > >>>>> } > > >>>>> else > > >>>>> { > > >>>>> head=start; > > >>>>> } > > >>>>> } > > > > >>>>> in main > > > > >>>>> if(head) > > >>>>> { > > >>>>> temp = reverse_recurse(head); > > >>>>> temp->next =NULL; > > >>>>> } > > > > >>>>> "head and temp are global" > > > > >>>>> On Sun, Jul 17, 2011 at 2:42 PM, Navneet Gupta < > navneetn...@gmail.com>wrote: > > > > >>>>>> Hi, > > > > >>>>>> I was trying to accomplish this task with the following call , > header > > >>>>>> = ReverseList(header) > > > > >>>>>> I don't want to pass tail pointer or anything and just want that i > get > > >>>>>> a reversed list with new header properly assigned after this call. > I > > >>>>>> am getting issues in corner conditions like returning the correct > node > > >>>>>> to be assigned to header. > > > > >>>>>> Can anyone give an elegant solution with above requirement? Since > it > > >>>>>> is with recursion, please test for multiple scenarios (empty list, > one > > >>>>>> node list, twe nodes > > > > >>>>>> list etc) before posting your solution. In case > > >>>>>> of empty list, the procedure should report that. > > > > >>>>>> -- > > >>>>>> Regards, > > >>>>>> Navneet > > > > >>>>>> -- > > >>>>>> 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. > > > > >>>>> -- > > >>>>> best wishes!! > > >>>>> Vaibhav Shukla > > >>>>> DU-MCA > > > > >>>>> -- > > >>>>> 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. > > > > > -- > > > *Piyush Sinha* > > > *IIIT, Allahabad* > > > *+91-7483122727* > > > * <https://www.facebook.com/profile.php?id=100000655377926> "NEVER SAY > > > NEVER" > > > * > > > > > -- > > > 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.