线性表是一类很常用的数据结构,分为顺序表和链表。其中顺序表可以简单的理解为数组。
链表是由若干个结点组成(每个结点代表一个元素),且结点在内存中的存储位置通常是不连续的。
1)链表的结点一般有两部分构成,数据域和指针域
struct node{
typename data;//数据域
node* next;//指针域
};
2)使用malloc函数为链表接待你分配内存空间(C语言)
malloc函数是C语言中stdlib.h头文件下用于申请动态内存的函数
typename* p=(typename*)malloc(sizeof(typename));
//申请一个int型变量和一个node型结构体变量为例
int* p=(int*)malloc(sizeof(int));
node* p=(node*)malloc(sizeof(node));
3)使用new运算符为链表结点分配内存空间
new是C++中用来申请动态内存空间的运算符
typename* p=new typename;
//申请一个int型变量和一个node型结构体变量为例
int* p=new int;
node* p=new node;
4)内存泄漏(就是要 开辟空间后记得释放,来防止内存泄漏)
free函数
//free函数是对应于malloc函数,同样是在stdlib.h头文件下。
free(p)//释放指针变量p所指向的内存空间,并且将指针变量p指向空地址NULL
delete运算符
//delete运算符是对应于new运算符的,其使用方法和效果均与free相同
delete(q);