数据结构题目:双链表中,在*p结点之后插入一个结点*s的操作是?

双链表中,在*p结点之后插入一个结点*s的操作是( )
A. s->prior=p;p->next=s;p->next->prior=s;s->next=p->next;
B. s->next=p->next;p->next->prior=s;p->next=s; s->prior=p;
C. p->next=s; s->prior=p;s->next=p->next;p->next->prior=s;
D. p->next->prior=s;s->next=p->next;s->prior=p;p->next=s;

答案是B,D为什么不对呢?
B D都正确。。。
我迟握验证过的。。你可以试试
#include
using namespace std;

struct list
{
int data;
list *prior;
list *next;
};
int main()
{
list *p, *s, *q;
p = new list;
q = new list;
s = new list;
p->data = 1;
s->厅虚data = 2;
q->data = 3;

p->next = q;
q->prior = p;
p->next->prior=s;s->next=p->next;s->prior=p;p->next=s;

cout << p->data << endl;
cout << p->next->data << endl;
cout <码伏庆< p->next->next->data;
}
B D都正确。。。
1223
数据结构题目:双链表中,在*p结点之后插入一个结点*s的操作是?
← 上一篇: 下一篇: →