关于addFirst方法
来源:4-2 在链表中添加元素

慕粉4184331
2020-03-10
课程中的addFirst如上图,此处传入数据e,再把head作为node对象的next,最后把新的node对象赋值给head…这个是不是就相当于它的next指向的是他自己,如果是的话那每次在链表头添加元素不就都没有下一个next了
此处理解感觉和课程讲的不太匹配特来请教
写回答
1回答
-
liuyubobobo
2020-03-11
不是。
这里的关键是,head 是一个指针(在 Java 中叫引用)。
new Node(e, head) 的意思是,创建了一个内存空间,这个空间里的 value 存的是 e,next 存的是 head 地址,即 next 指向当前 head 所指向的内存。
然后,head = new Node(e, head),这个等号,让 head 指向了新创建的这个内存。但此时,新创建的这个 Node 的 next,依然指向原先 head 指向的那个内存。
head 只是一个指针,指的内存变了,这也就是为什么,在课程的 ppt 中,我要把他们画成箭头。
继续加油!:)
012020-03-11
相似问题
关于递归算法的提问?
回答 1
关于LR我的方法
回答 1