void Insert(List * L, Node e)
{
Node * temp = *L;
Node * newNode = (Node *)malloc(sizeof(Node));
*newNode = e;
newNode->Next = NULL;
if (temp == NULL) {
// 空链表
*L = newNode;
}
else {
// 非空链表,有有效节点
// 遍历链表,找到最后一个节点(尾节点的next等于NULL)
while (temp->Next != NULL)
temp = temp->Next;
temp->Next = newNode;
}
}
void Swap(List * L, int i, int j)
{
//节点数据信息的交换
List l1=*L,l2=*L;
i--;
j--;
while (i-- && l1->Next !=NULL){
l1=l1->Next;
}
while (j-- && l2->Next !=NULL){
l2=l2->Next;
}
if (i>0 || j>0){
return;
}
Node* data=l1->Next;
l1->Next=l2->Next;
l2->Next=data;
Node n=*l1;
*l1=*l2;
*l2=n;
}
链表插入与节点交换
最新推荐文章于 2024-03-02 15:43:10 发布