can i know the source code for reversing a linked list with
out using a temporary variable?
Answers were Sorted based on User's Feedback
#include<stdio.h>
struct node *head;
void main();
{
//consider head is the first node
reverse(head);
//here print the reversed link list ...thank you;
}
reverse(struct node *cur)
{
if(cur->next==NULL)
reveres(cur->next)
else{temp=head=cur;}
temp->next=cur;
temp=temp->next;
temp->next=NULL;
}
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / vishnu948923
struct node* reverse(struct node* first)
{
struct node* cur, temp;
cur=NULL;
while(first!=NULL)
{
temp=first;
first=first->link;
temp->link=cur;
cur=temp;
}
return cur;
}
| Is This Answer Correct ? | 5 Yes | 5 No |
Answer / ruchi
void reverse()
{
nptr p;
int i=0;
p=start;
while(p->next!=NULL)
{
p=p->next;
i=i+1;
}
i++;
while(i)
{
printf("%d\n",p->num);
p=p->prev;
i--;
}
}
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / fazil
void Func( struct Node* List )
{
if( List && List->Next )
{
Func( List->Next );
List->Next->Next = List;
}
}
| Is This Answer Correct ? | 2 Yes | 3 No |
Answer / zhangwy
void Func( struct Node* List )
{
if( List && List->Next )
{
Func( List->Next );
List->Next->Next = List;
List->next = NULL ;
}
}
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / abdur rab
struct node* reverse ( struct node* head )
{
struct node* temp;
if ( NULL == head -> next ) temp = head;
else {
temp = reverse ( head -> next );
head -> next -> next = head;
head -> next = NULL;
}
return ( temp );
}
| Is This Answer Correct ? | 0 Yes | 3 No |
Why main function is special give two reasons?
What is the real difference between arrays and pointers?
27 Answers Hexaware, Logic Pro, TCS,
What does the characters “r” and “w” mean when writing programs that will make use of files?
Where are the auto variables stored?
How can I access a memory located at certain address?
how to print the character with maximum occurence and print that number of occurence too in a string given ?
This is a variation of the call_me function in the previous question:call_me (myvar)int *myvar;{ *myvar += 5; }The correct way to call this function from main() will be a) call_me(myvar) b) call_me(*myvar) c) call_me(&myvar) d) expanded memory
What is the output for the program given below typedef enum grade{GOOD,BAD,WORST,}BAD; main() { BAD g1; g1=1; printf("%d",g1); }
What is define c?
Multiply an Integer Number by 2 Without Using Multiplication Operator
the expression a=30*1000+2768; evalutes to a) 32768 b) -32768 c) 113040 d) 0
how to find the size of the data type like int,float without using the sizeof operator?