Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...


program to Reverse a linked list

Answers were Sorted based on User's Feedback



program to Reverse a linked list..

Answer / raghuram

node *reverse(node *first)


{
node *cur,*temp;


cur=NULL;

while(first!=NULL)


{temp=first;

first=first->link;

temp->link=cur;

cur=temp;
}

return cur;

}

Is This Answer Correct ?    137 Yes 52 No

program to Reverse a linked list..

Answer / shruti

reverse a linked list -> by creating a new list.

consider home as the stationary pointer of the original list
adn start as the stationary pointer of the new linked list..

the node structure is as follows:

struct node
{
int data;
struct node * next;
}

struct node * reverse(struct node *home , struct node *
start)
temp = home;
while(temp != NULL)
{
p = (struct node *) malloc (sizeof(struct node));
p -> data = temp -> data;
p -> next = NULL;

if(start == NULL)
start = p;

else
{
p -> next = start;
start = p;
}

temp = temp -> next;

return start;
}

Is This Answer Correct ?    42 Yes 16 No

program to Reverse a linked list..

Answer / gaurav jain

void reverse(struct node **kbr)
{
struct node *temp,*p,*q;
temp=*kbr;
p=temp->next;
q=temp;
while(p!=NULL)
{
temp=p;
p=p->next;
temp->next=q;
q=temp;
}
(*kbr)->next=NULL;
*kbr=q;
}

Is This Answer Correct ?    24 Yes 16 No

program to Reverse a linked list..

Answer / ashish rajta

void reverse(list *l)
{
lnode *temp;
temp=l->first;
while(temp->next != NULL)
{
temp=temp->next;
}
while(temp !=NULL)
{
printf("%d",temp->info);
temp=temp->prev;
}
}

Is This Answer Correct ?    15 Yes 12 No

program to Reverse a linked list..

Answer / ajay george

void rev(node *nPtr, node *prevPtr)
{
if(nPtr->next==NULL)
{
head=nPtr;
}
else
{
rev(nPtr->next, nPtr);
}
nPtr->next=prevPtr;
prevPtr->next=NULL;
}

Is This Answer Correct ?    3 Yes 1 No

program to Reverse a linked list..

Answer / mbm

/* Reverse linked list by recursion */

if(head)
head = _ReverseLinkedList(NULL, head, head->next);

NodeStr *_ReverseLinkedList(
NodeStr *preNode,
NodeStr *node1,
NodeStr *node2
)
{
NodeStr *next_node;

if(!node2)
return node1;

next_node = node2->next;
node2->next = node1;
node1->next = preNode;
return _ReverseLinkedList(node1, node2, next_node);
}

Is This Answer Correct ?    11 Yes 11 No

program to Reverse a linked list..

Answer / raj

void linkreverse()
{
node *p=head,*q=head->next,*r=q->next,*temp;
p->next=NULL;
temp=p;
while(p!=tail)
{
q->next=p;
p=q;
if(r!=NULL)
{
q=r;
r=q->next;
}
}
head=p;
tail=temp;
}

Is This Answer Correct ?    0 Yes 0 No

program to Reverse a linked list..

Answer / cleonjoys

void reverse(Node_t *nPtr, Node_t *prevPtr){

if(nPtr->next != NULL){
reverse(nPtr->next, nPtr);
}
else{
headp = nPtr; //header is a global pointer, i know
keeping header is security hole.
}
nPtr->next = prevPtr;
}

Is This Answer Correct ?    7 Yes 8 No

program to Reverse a linked list..

Answer / bragaadeesh

Program to reverse a singly list ITERATIVELY,

http://www.technicalypto.com/2010/01/java-program-to-reverse-singly-linked.html

Program to reverse a linked list RECURSIVELY

http://www.technicalypto.com/2010/03/reverse-singly-linked-list-recursively.html

Is This Answer Correct ?    4 Yes 7 No

program to Reverse a linked list..

Answer / don

int rec_rev(node *p) {
node *last_prev,*last,*temp,*q;
if (p->next==NULL)
return 1;
else {
last_prev=find_last(); // finds last but 1 element
last=last_prev->next;
last_prev->next==NULL;
if(p==head) {
temp=head;
head=last;
head->next=temp;
p=temp;
rec_rev(p);
}
else {
q=find_prev(p);
last->next=q->next;
q->next=last;
q->next->next=p;
rec_rev(p);
}
}
]

Is This Answer Correct ?    3 Yes 7 No

Post New Answer

More C Code Interview Questions

#include<stdio.h> main() { int a[2][2][2] = { {10,2,3,4}, {5,6,7,8} }; int *p,*q; p=&a[2][2][2]; *q=***a; printf("%d..%d",*p,*q); }

1 Answers  


write a program for area of circumference of shapes

0 Answers  


#include<stdio.h> main() { int a[2][2][2] = { {10,2,3,4}, {5,6,7,8} }; int *p,*q; p=&a[2][2][2]; *q=***a; printf("%d----%d",*p,*q); }

1 Answers  


main() { unsigned char i=0; for(;i>=0;i++) ; printf("%d\n",i); }

1 Answers  


main() { printf("%x",-1<<4); }

3 Answers   HCL, Sokrati, Zoho,


how to test pierrot divisor

0 Answers  


String copy logic in one line.

11 Answers   Microsoft, NetApp,


In a gymnastic competition, scoring is based on the average of all scores given by the judges excluding the maximum and minimum scores. Let the user input the number of judges, after that, input the scores from the judges. Output the average score. Note: In case, more than two judges give the same score and it happens that score is the maximum or minimum then just eliminate two scores. For example, if the number of judges is 5 and all of them give 10 points each. Then the maximum and minimum score is 10. So the computation would be 10+10+10, this time. The output should be 10 because 30/3 is 10.

0 Answers   TCS,


main() { int i; i = abc(); printf("%d",i); } abc() { _AX = 1000; }

2 Answers  


source code for delete data in array for c

1 Answers   TCS,


#define assert(cond) if(!(cond)) \ (fprintf(stderr, "assertion failed: %s, file %s, line %d \n",#cond,\ __FILE__,__LINE__), abort()) void main() { int i = 10; if(i==0) assert(i < 100); else printf("This statement becomes else for if in assert macro"); }

1 Answers  


plz send me all data structure related programs

2 Answers  


Categories