三分钟带你明白如何实现链表尾插

三分钟明白如何实现链表尾插

什么是链表

下面是我对链表概念的一些总结。
链接: link.

链表实现尾插

我们都知道链表都是每个节点依靠一个指针来指向下一个节点的
所以要实现尾插我们只需要创建一个新的节点,然后将最后一个节点的
next指针由指向null改变为指向这个节点,再将这个节点的next指针指向改为null。

如下图
在这里插入图片描述
在这里插入图片描述
实现如下

具体实现如下
//创建节点
listnode* creatlistnode(int val) {
	listnode* node = (listnode*)malloc(sizeof(listnode));
	node->_data = val;
	node->_next = NULL;
	return node;
}

//尾插
void pushback(list*lst,int val) {
	if (lst == NULL) {
		return;
	}
	if (lst->_head == NULL) {
		//插入第一个节点
		//创建节点
	lst->_head=	creatlistnode(val);
	}
	else {
//从第一个节点开始遍历,找到最后一个节点
		listnode* tail = lst->_head;
		while (tail->_next != NULL) {
			tail = tail->_next;
		}
		tail->_next = creatlistnode(val);
	}
}

欢迎大家和我一起交流学习知识哦😄

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值