作业帮 > 综合 > 作业

已知有一个单向循环链表,其每个结点中含三个域:prior,data 和next,其中data为数据域,next为指向后继

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/26 15:49:22
已知有一个单向循环链表,其每个结点中含三个域:prior,data 和next,其中data为数据域,next为指向后继结点指针域,pre也为指针域,但它的值为空(NULL),试编写算法将此单向循环链表改为双向循环链表,即使pre成为指向前驱结点的指针域.
Node* list( Node* head )
{
node *p,*q;
p = head;
q = NULL;
while( p != NULL ) //一边遍历,一边加前向指针
{
p->prior = q; //关键句
q=p;
p = p->next;
}
return q; //返回双向链表的尾结点
}
有点不好理解,画图试试,一下就明白了.