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.