带头节点单链表的基本操作

本文详细介绍了如何使用C++实现带头节点的单链表,包括结点定义、初始化、判空、按位序插入和删除、指定结点删除、按位和按值查找、计算链表长度以及通过尾插法和头插法建立单链表等基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

定义结点
typedef struct LNode{
   
	int data;			//每个节点存放一个数据元素
	struct LNode *next; //指针指向下一个节点
}LNode,*LinkList;		//LinkList等价于LNode *,前者强调链表,后者强调结点
初始化
//初始化一个单链表(带头结点)
bool InitList(LinkList &L){
   
	L = (LNode *)malloc(sizeof(LNode));
	if(L==NULL)		//内存不足,分配失败
		return false;
	L->next = NULL;  //只有头结点
	return true;
}
判空
//判断单链表是否为空
bool Empty(LinkList L){
   
	return (L->next==NULL);
}
按位序插入
//按位序插入(带头结点)
bool ListInsert(LinkList &L,int i,int e){
   
	if(i<1)
		return false;
	LNode *p;  //指针p指向当前扫描到的结点
	int j=0;   //当前p指向的是第几个结点
	p = L;
	while(p!=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值