95页实现先进先出的算法1.3中,从表头删除元素的dequeue()如下
public Item dequeue()
{
Item item = first item;
first = first.next;
if(isEmpty)) last = null;
N--;
return item;
}
按照C的理解,first 是一个Node类型的变量,则“first = first.next;”将first变为item和next都和first.next相同的Node。这不符合代码的目的,也与图1.3.7中的图示不符。从图1.3.7中的图示看出,这里的first是类似指针一样的东西。学习过http://zwmf.iteye.com/blog/1738574 这篇文章后,我才明白这里的first不是变量,而是引用,类似C中的指针,问题迎刃而解。
欢迎交流讨论( • ̀ω•́ )✧
&spm=1001.2101.3001.5002&articleId=76181166&d=1&t=3&u=ef80a4a4b2504b0f9e2cb5ece9d036b3)
1万+

被折叠的 条评论
为什么被折叠?



