在无序列表中添加节点
Adding nodes in an Unordered Linked List
我只想知道这两条线的区别。 listData 顺便提一下。
temp->next = listData;
和
listData = temp->next;
这是向无序列表添加节点的完整代码
NodeType* temp;
temp = new NodeType;
temp->data = item;
temp->next = listData;
listData = temp;
length++;
所以如果我改为 listData = temp->next
temp->next = listData
会发生什么,或者有人可以用最简单的术语解释它的含义。每当我在右侧或左侧看到 ->
时,我都会感到困惑。谢谢!
->
仅表示您正在访问指针引用,仅此而已。
当您看到等号时,这意味着右侧的内容已分配给左侧(除非您覆盖等号),您通常不会这样做。
temp->next = listData
您正在将 listData 设置为 temp 的下一个。
listData = temp->next
您正在将 temp 的 next 设置为 listData
由于您要将名为 temp
的节点添加到 LinkedList,因此您需要前者。考虑一个链表,您要在两个节点 A
和 B
之间添加一个节点 temp
。你会:
将 A
的下一个设置为 temp
将 temp
的下一个设置为 B
这个过程的最后一个就是temp->next = listData
正在做的事情。 (我假设 listData 是链表的其余部分,包括 B
.
我只想知道这两条线的区别。 listData 顺便提一下。
temp->next = listData;
和
listData = temp->next;
这是向无序列表添加节点的完整代码
NodeType* temp;
temp = new NodeType;
temp->data = item;
temp->next = listData;
listData = temp;
length++;
所以如果我改为 listData = temp->next
temp->next = listData
会发生什么,或者有人可以用最简单的术语解释它的含义。每当我在右侧或左侧看到 ->
时,我都会感到困惑。谢谢!
->
仅表示您正在访问指针引用,仅此而已。
当您看到等号时,这意味着右侧的内容已分配给左侧(除非您覆盖等号),您通常不会这样做。
temp->next = listData
您正在将 listData 设置为 temp 的下一个。
listData = temp->next
您正在将 temp 的 next 设置为 listData
由于您要将名为 temp
的节点添加到 LinkedList,因此您需要前者。考虑一个链表,您要在两个节点 A
和 B
之间添加一个节点 temp
。你会:
将
A
的下一个设置为temp
将
temp
的下一个设置为B
这个过程的最后一个就是temp->next = listData
正在做的事情。 (我假设 listData 是链表的其余部分,包括 B
.