#include<iostream>
#include <stdlib.h>
#include <cstdlib>
using namespace std;
struct ListNode
{
int val;
ListNode *next;
ListNode(int x):val(x),next(nullptr){}
};
//尾插法
ListNode* insert(ListNode* l1, int data)
{
while(l1->next!=nullptr)
{
l1=l1->next;
}
ListNode* pnew;
pnew = new ListNode(data);
//pnew = (ListNode *)malloc(sizeof(l1));
// l1->next = pnew;
// l1 = pnew;
// l1->val = data;
// l1->next = nullptr;
pnew->val =data;
l1->next = pnew;
return l1;
};
//删除节点
ListNode * shanchu(ListNode *l1,int pos)
{
ListNode *phead = l1;
while(l1->next)
{
if(l1->next->val==pos)
{
l1->next =l1->next->next;
break;
}
l1=l1->next;
}
return l1;
}
//打印链表
void display(ListNode *p)
{
while (p!=NULL)
{
cout<<p->val<<endl;
p = p->next;
}
}
int main(int argc, char const *argv[])
{
//ListNode *head = new ListNode(0);
ListNode *l1 = new ListNode(0);
insert(l1,2);
insert(l1,3);
insert(l1,1);
shanchu(l1,1);
display(l1);
system("pause");
return 0;
}
c++链表操作
最新推荐文章于 2024-07-25 18:34:51 发布