//首先定义一个结构体
typedef struct Node
{
int data;
int data2;
Node *next; //此处应当将next理解为一个对象,所以这是指向下一个节点(对象),而不是指向自己
}Node;
Node *List = nullptr;
//创建一个链表
//参数 L: 需要创建的链表, n: 创建节点的个数
void CreateList(Node **L, int n)
{
//定义ptr 指向*L, L传入的是一级指针变量的地址,所以*L为传入的一级指针所指向的变量的地址(即&List)
//有了List的地址后,就能操作整个链表
Node *ptr = *L;
Node *p; //定义新节点 p
for (int i = 0; i < n; i++)
{
p = new Node; //为p申请内存
p->data2 = 2;
p->data = 1;
ptr->next = p; //将新节点插入到原链表中
ptr = p; //节点后移
}
ptr->next = nullptr; //将最后一个节点指向nullptr
}
int main(void)
{
CreateList(&List, 10); //创建一个长度为10的单向链表
return 0;
}
线性单向链表
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。