其他分享
首页 > 其他分享> > 单链表的定义

单链表的定义

作者:互联网

带头结点

#include <stdio.h>
#include <stdlib.h>

typedef struct LNode{ // 定义单链表结点类型
	int data; // 每个节点存放一个数据元素
	struct LNode *next; // 指针指向下一个节点
}LNode, *LinkList; // LNode强调返回的是一个结点,LinkList强调这是一个单链表

bool InitList(LinkList &L) {
	L = (LNode *)malloc(sizeof(LNode)); // 分配一个头结点
	if(L==NULL) // 内存不足,分配失败
		return false;
	L->next = NULL; // 头结点之后暂时还没有结点
	return true;
}

void test() {
	LinkList L; // 声明一个指向单链表的指针,此处并没有创建一个结点
	InitList(L); // 初始化一个空表
}

// 判断单链表是否为空
bool Empty(LinkList L) {
	return(L->next==NULL);
}

不带头结点

#include <stdio.h>

typedef struct LNode{ // 定义单链表结点类型
	int data; // 每个节点存放一个数据元素
	struct LNode *next; // 指针指向下一个节点
}LNode, *LinkList; // LNode强调返回的是一个结点,LinkList强调这是一个单链表

bool InitList(LinkList &L) {
	L=NULL; // 空表,暂时还没有任何结点。设为NULL是为了防止脏数据
	return true;
}

void test() {
	LinkList L; // 声明一个指向单链表的指针,此处并没有创建一个结点
	InitList(L); // 初始化一个空表
}

// 判断单链表是否为空
bool Empty(LinkList L) {
	return(L==NULL);
}

标签:结点,单链,return,定义,LinkList,NULL,LNode
来源: https://www.cnblogs.com/sashuishui/p/16460437.html