單鏈表兩種結構 頭指標,頭結點與首元結點辨析

2021-10-09 12:39:43 字數 808 閱讀 7406

要區分頭指標,頭結點,首元結點這幾個概念分別指什麼,需要結構圖來幫助闡釋。

我們先來看一種不太嚴謹的表現形式。

1->2->3->4->null
頭結點這個名詞很具有迷惑性。比如這張圖中,剛接觸的新手很容易以為1就是來自頭結點的資料域。但其實這個結構裡我們是看不到頭結點的。我們只能看到首元結點,也就是說這個1是首元結點資料域裡的元素。所以首元結點,才是煉表裡第乙個資料元素儲存的位置。第一種結構之中存在頭結點。頭結點位於首元結點之前,其資料域一般是沒有意義的,有的時候可以存放一些指示資訊。頭指標head指向頭結點。頭結點指標域中的head->next指向首元結點位址。這個時候要取出首元結點資料域的元素,我們是用head->next->data來實現。

這種結構中是沒有頭結點存在的,要注意刷題**leetcode中的鍊錶題預設的都是這種結構,否則刷題容易踩坑。

頭指標head指向首元結點,也就是第乙個資料元素的儲存位置,這個時候我們直接可以用head->data取出該結點資料域內的元素。head->next自然指向第二個資料元素的儲存位置。

頭結點可帶可不帶。如果有頭結點則頭指標指向頭結點(首元結點的前乙個結點),如果沒有頭結點則頭指標指向首元結點。

單鏈表 頭指標與頭結點

頭指標 頭指標是指鍊錶指向第乙個結點的指標,若煉表有頭結點,則是指向頭結點的指標。頭指標具有標識作用,所以常用頭指標冠以鍊錶的名字。無論鍊錶是否為空,頭指標均不為空。頭指標是鍊錶的必要元素。頭結點 它是為了操作的統一和方便設立的,放在第乙個元素的結點之前,其資料域一般無意義 但也可以用來存放鍊錶的長...

結構之美 單鏈表的頭結點與頭指標

當鍊表的每個結點只包含乙個指標域時,我們稱此鍊錶為單鏈表。關於單鏈表的訪問,有時候我們在單鏈表的第乙個結點 有效元素 之前附設乙個結點,稱之為頭結點 指向頭結點的指標,稱之為頭指標 對單鏈表的訪問必須從頭指標開始進行,由於單鏈表的最後乙個資料元素沒有直接後繼,則指標為null。對於頭結點,資料域可以...

結構之美 單鏈表的頭結點與頭指標

當鍊表的每個結點只包含乙個指標域時,我們稱此鍊錶為單鏈表。關於單鏈表的訪問,有時候我們在單鏈表的第乙個結點 有效元素 之前附設乙個結點,稱之為頭結點 指向頭結點的指標,稱之為頭指標 對單鏈表的訪問必須從頭指標開始進行,由於單鏈表的最後乙個資料元素沒有直接後繼,則指標為null。對於頭結點,資料域可以...