Java并发-入队列/出队列

本文详细介绍了队列的基本操作——入队列和出队列的过程。入队列时,新节点被添加到队列尾部,并更新tail节点指向新节点;而出队列时,只有当head节点为空时才进行更新。

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

入队列

入队列就是将入对节点添加到队列的尾部
举个例子:
·添加元素1。队列更新head节点的next节点为元素1节点。又因为tail节点默认情况下等于head节点,所以它们的next节点都指向元素1节点。
·添加元素2。队列首先设置元素1节点的next节点为元素2节点,然后更新tail节点指向元素2节点。
·添加元素3。队列首先设置tail节点的next节点为元素3节点。
·添加元素4。队列首先设置元素3的next节点为元素4节点,然后将tail节点指向元素4节点
这里写图片描述
做两件事:
1.将入队节点设置成当前队列尾节点的下一个节点
2.更新tail节点,如果tail节点的next节点不为空,则将入队节点设置成tail节点,如果tail节点的next节点为空,则将入队节点设置成tail的next节点,所以tail节点不总是尾节点。
上述只是单线程下

出队列

同样也是基于单线程下
这里写图片描述
并不是每次出队时都更新head节点,当head节点里有元素时,直接弹出head节点里的元素,而不会更新head节点。只有当head节点里没有元素时,出队操作才会更新head节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值