从左到右 还是从右到左?

来源:4-7 带有尾指针的链表:使用链表实现队列

慕娘5396411

2019-07-17

图片描述

波波老师您好 我想请问您一个问题 以图片里 52和53行为例
到底该如何从右到左理解还是从左到右理解?

1.从理解上来讲 从左到右 会比较好理解(您在课程里也是这么叙述,您课程里为何没有从右到左)
2.可是从逻辑上来讲 我们应该是把右边的赋给左边呀

我感觉到了一些矛盾,我也说不出一些所以然出来,希望您可以解答我的这个疑惑。但愿我的意思表达清楚了。期待您的回答

写回答

1回答

liuyubobobo

2019-07-17

我觉得我可能没有特别理解你的问题。


首先,我假定,你说的左右,链表头在左边,链表尾在右边。

所以,是的,我们队列是在不断的向链表尾加元素,但如果要删除元素,是在链表头,也就是你说的,从右边加元素,从左边删元素。


我不知道你说的“矛盾”是在哪里?

因为你指出的52,53两句话,就是在从右边加元素。因为tail指向链表最后一个元素,也就是最右边的元素。


tail.next = new Node(e);

在当前链表的末尾后面又加了一个元素


tail = tail.next;

上面的添加以后,tail已经不再指向最后一个元素了,所以要维护一下tail,让tail指向最后一个元素


看能不能理解?


继续加油!:)

0
3
慕娘5396411
回复
liuyubobobo
谢谢波波老师! 懂了 ,是我理解的问题 ,谢谢!
2019-07-17
共3条回复

玩转数据结构

动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…

6221 学习 · 1699 问题

查看课程