比如说链表
a -> b -> c -> d
表头是a,表尾是d。就地逆置的意思就是变成:
a <- b <- c <- d
a变成表尾,d变成表头
假设
struct LINK {
int value;
struct LINK * next;
};
struct LINK a, b, c, d;
a->next = &b;
b->next = &c;
c->next = &d;
d->next = 0;
逆置后:
b->next = &a;
c->next = &b;
d->next = &c;
a->next = 0;
所谓就地逆置,就是在操作中,遇到a->next = &b;的情况,那么改写为b->next = &a;
本回答被网友采纳