一、链表
1、链表和线性表的关系:链表是线性表的链式存储结构。
2、链表给每块数据单独的存储空间,即存储空间地址可不连续。

3、结点类型
struct node{
datatype data;
struct node *next;
};
二、单向链表

1、头结点不存储数据,且为空。
2、引入头结点的原因:在表头插入、表尾插入或者表中间插入都一样,让操作统一、简化。
三、用C语言实现单向链表
1、构造存储结构
typedef int datatype;
typedef struct linklist
{
datatype data; /* 数据域 */
struct linklist *next; /* 指针域 */
}link_list, *link_plist;
2、初始化
初始化主要的工作:①申请头结点空间;②建立空链表(
head->next=NULL)

/* 初始化 */
void init_linklist(link_plist *list)
{
*list = (link_plist)malloc(sizeof(link_list));
if(NULL == *list)
{
printf("内存申请失败\n");
perror("malloc"); /* 打印内存申请失败原因 */
exit(1);
}
(*list
这篇博客详细介绍了单向链表的概念和特点,并通过C语言展示了如何初始化、插入、删除节点。还提供了逆转单向链表的步骤和代码实现,以及创建链表和测试结果的讨论。
最低0.47元/天 解锁文章
3262

被折叠的 条评论
为什么被折叠?



