我真的很困惑,究竟是怎麼回事的前..添加節點到鏈表
我具備的功能
void addToFront(int data)
{
Node* tmp = new Node();
tmp -> data = data;
tmp -> next = head;
head = tmp;
}
所以,當我們做線tmp-> next = head
,我們正在將tmp
指針指向head
指向的內容(列表的當前第一個元素)?因爲這就是它的感覺,但不會只是讓它指向head
?然後當我們做head = tmp
時,我們正在向我們創建的新節點指出正確的方向?
@so然後,因爲指針的值是它指向的東西的地址,所以tmp得到頭的價值意味着它得到了什麼頭指向的地址.. – FrostyStraw
這是正確的。 'tmp - > next = head;'給出'tmp - > next'和'head'相同的值。因此'tmp - > next'現在指向'head'指向的任何東西。 –
但後來不會頭= tmp意味着頭現在指向任何tmp指向?現在不是tmp指向以前是鏈表上的第一個節點嗎? – FrostyStraw