【发布时间】:2019-02-22 17:11:08
【问题描述】:
我正在学习链表插入,并遇到以下代码在链表末尾插入一个节点(在一本相当古老且过时的 C++ 书籍中,我仍然在使用我不知道为什么):
void Insert_End(Node * np){
if (start == NULL){
start = rear = np;
}
else{
rear -> next = np;
rear = np;
}
}
我的问题是不应该 np -> 下一个 = 后方;
PS : np 是在末尾插入的新节点,rear 指向最后一个节点,start 指向第一个节点。
【问题讨论】:
-
不,(新的)最后一个节点的下一个指针应该保持为NULL。
-
确实,谢谢。当我发布问题时我想通了。
-
指向最后一个节点?
-
这会设置新的列表末尾,这样如果再次调用
Insert_End,新节点就会出现在正确的位置。 -
哦,谢谢! (我之前的评论不小心被删了……如果有未来的人在这里,我问的是最后一行的角色)
标签: c++ c linked-list singly-linked-list