1个回答
展开全部
#include <stdio.h>
struct TNode
{
TNode pre;
TNode next;
int seq;
};
int main()
{
TNode pNode[5], temp;
int n = 5, i = 0;
//链表初始化
for (i; i < n; i++)
{
pNode[i].next = pNode[i+1];
if ( i != 0)
{
pNode[i].pre = pNode[i-1];
}
pNode[i].seq = i;
}
// 链表节点交换,交换3和4
temp = pNode[3];
交换,再将3的前和后,4的前和后重新赋值
return 0;
}
struct TNode
{
TNode pre;
TNode next;
int seq;
};
int main()
{
TNode pNode[5], temp;
int n = 5, i = 0;
//链表初始化
for (i; i < n; i++)
{
pNode[i].next = pNode[i+1];
if ( i != 0)
{
pNode[i].pre = pNode[i-1];
}
pNode[i].seq = i;
}
// 链表节点交换,交换3和4
temp = pNode[3];
交换,再将3的前和后,4的前和后重新赋值
return 0;
}
追问
没看懂,不好意思,能写点注释吗
追答
先将3节点的内容全部保存到temp, 将3变为4,即将4的next赋给3,4的seq赋给3,
再将temp的pre赋给4,temp的seq赋给4,
最后将temp的pre赋给3,再将3赋为4的next。可以了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询