采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
波波老师您好 我想请问您一个问题 以图片里 52和53行为例 到底该如何从右到左理解还是从左到右理解?
1.从理解上来讲 从左到右 会比较好理解(您在课程里也是这么叙述,您课程里为何没有从右到左) 2.可是从逻辑上来讲 我们应该是把右边的赋给左边呀
我感觉到了一些矛盾,我也说不出一些所以然出来,希望您可以解答我的这个疑惑。但愿我的意思表达清楚了。期待您的回答
我觉得我可能没有特别理解你的问题。
首先,我假定,你说的左右,链表头在左边,链表尾在右边。
所以,是的,我们队列是在不断的向链表尾加元素,但如果要删除元素,是在链表头,也就是你说的,从右边加元素,从左边删元素。
我不知道你说的“矛盾”是在哪里?
因为你指出的52,53两句话,就是在从右边加元素。因为tail指向链表最后一个元素,也就是最右边的元素。
tail.next = new Node(e);
在当前链表的末尾后面又加了一个元素
tail = tail.next;
上面的添加以后,tail已经不再指向最后一个元素了,所以要维护一下tail,让tail指向最后一个元素
看能不能理解?
继续加油!:)
波波老师好,我想 应该是我 表达的有些问题。 我的问题,其实是关于赋值规则的问题 举个例子(编程中) A=B 的意思是,把B赋给A, 而并非 把A赋给B。 而52行 tail.next=new Node(e) 到底是 把 new node赋给 tail.next(前者) 还是 把tail.next赋给new node(后者)
把 new Node 赋值给 tail.next。也就是tail.next指向了new Node。
谢谢波波老师! 懂了 ,是我理解的问题 ,谢谢!
登录后可查看更多问答,登录/注册
动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…
10.4k 16
1.4k 17
1.4k 14
1.3k 14