如果循环队列满了,再加元素的话队头指针和队尾指针怎么变化
按我的理解应该是不变了才对,满了以后队尾再插入新数据依然是队尾呀,队头出去一个数据,第二个数据就变成了第一个数据的位置,队头指针还是不变啊,怎么都想不明白,
人气:227 ℃ 时间:2020-10-02 01:53:51
解答
先假设一个数据占的大小是8 Byte.
再假设加元素之前,队头指针的值为0x00000010,那第二个数据的地址是0x00000018
现在加入元素,那么第二个数据应该变为队头,所以队头指针的值应变为第二个数据的地址.
队尾指针同理.队头不是最先进去的数据的指针是队头指针么对的。前面我想说的是加元素之前,第一个数据的地址是0x00000010,这时候队头指针是这个值。后来不是在队列满的情况下再向队尾插入了一个数据么,那原来的第一个数据就应该被扔掉吧?也就是0x00000010应该被释放掉,而队头指针要相应向后移。
推荐
猜你喜欢
- 在右图所示的电路中,电源电压保持不变,当电键S闭合后,发现电路中只有一个电表的示数为零,接着无论怎样移动滑动变阻器R2的滑片P,两电表的示数均不发生变化,则( ) A.电阻R1
- have和has的区别在那?
- 猜字谜:外面会说话,里面飘雪花,里外合起来,人人爱看它.
- 在周末你经常干些什么?英文句子
- ABCD四种物质在一定条件下发生如下反应2A+3B=2C+2D.以知ABCD的相对分子质量依次为M1,M2,M3,M4;当它门恰好完全反应时ABCD的质量比为m1,m2,m3,m4,则下列关系式中不正确的是( )
- 如图,等腰三角形ABC中,AB=AC,点E、F分别是AB、AC的中点,CE⊥BF于点O.求证 1 四边形EBCF是等腰梯形 2 EF²+BC²=2BE² (图自己画)
- 求f'(x)要过程,f(x)=e的x次方+1/2xf'(0)
- 35台机器2台不合格它的合格率是多少?