最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Leetcode鏈表【代碼隨想錄--Part2】

2023-07-14 16:21 作者:Poyo_a  | 我要投稿

基礎(chǔ)知識:

? ? ? ? 1.? 【鏈表的基本定義:】線性結(jié)構(gòu)利用指針連結(jié)在一起。這些線性結(jié)構(gòu)是指存儲東西的連結(jié)方式,其中要連結(jié)的是結(jié)點。

? ? ? ? ?2. ?【鏈表的結(jié)點】:分為數(shù)據(jù)域和指針域

單鏈表

?3.【鏈表的分類】:單鏈表、雙鏈表和循環(huán)鏈表

? ?其中單鏈表是“基本模型”,雙鏈表和循環(huán)鏈表是在他的基礎(chǔ)上改進的。

? ? ? ? ? ?3.1【雙鏈表】:其中的是指在原來一個指針域的基礎(chǔ)上,再添加一個指針域,這樣總的就有兩個指針域。

雙鏈表,特色是:雙指針

? ? ? ? ? 3.2【循環(huán)鏈表】:是指在單鏈表的基礎(chǔ)上,把最后指向NULL的指針,指向它的頭部

舉個例子:

類似于這樣

? ? ? ??


【鏈表的基本定義的例子】?給要點餐的一群人排好序用計算機存儲起來。在計算機中我們可以采用 數(shù)組鏈表。

【鏈表實際存儲數(shù)據(jù)的例子】

來自youtube Neso Academy

head 存放第一個結(jié)點的數(shù)據(jù)地址,第一個結(jié)點存放第二個結(jié)點的數(shù)據(jù)地址......


練習:

? 方法1:


還是比較簡單的,這里是學習了解法中的遞歸法。


【重點】:遞歸重點看return然后把return的結(jié)果和removeElenets對比來看。

方法2:虛擬頭結(jié)點:

? 引入:我們經(jīng)過第一個方法發(fā)現(xiàn): 刪除結(jié)點的話,可能是頭結(jié)點,可能是除了頭結(jié)點的。所以奇思妙想的我們,想到用虛擬頭結(jié)點來解決這個問題,讓head不再是第一個了嘔。

第一步:我們來看看如何設(shè)置虛擬頭結(jié)點;

? ??

dummynode原本指向1結(jié)點,然后跨過去指向4。和原來的刪除結(jié)點差不多嘔。

第二步:代碼演示

【技術(shù)總結(jié)】:1.新申請了一個結(jié)點要用new?

? ? ? ? ? ? ? ? ? ? ? ? 2.這個結(jié)點也同樣使用了 cur來操作,來操作鏈表的走向。

? ? ? ? ? ? ? ? ? ? ? ?3.最后就是delete 多余的結(jié)點,最后head要更新。不然會出現(xiàn)鏈條斷不干凈。

這道題一共要實現(xiàn)的目標是 獲取第n個節(jié)點的值,頭部插入節(jié)點,尾部插入節(jié)點,第n個節(jié)點錢插入節(jié)點。刪第n個節(jié)點。


1.獲取第n個節(jié)點的值(利用虛擬頭結(jié)點):

【技術(shù)總結(jié)】:

要引入一個temp中間變量來存儲,因為temp,因為cur改變指向,沒有指針再連結(jié)head了。所以要提前備份一個。

利用cur=temp來不斷遍歷鏈表

Leetcode鏈表【代碼隨想錄--Part2】的評論 (共 條)

分享到微博請遵守國家法律
陆河县| 阳曲县| 盐源县| 平原县| 湖南省| 鹤庆县| 越西县| 峨山| 承德市| 博野县| 龙陵县| 喀喇| 车险| 广宁县| 宁陵县| 郁南县| 平定县| 青海省| 肥城市| 正宁县| 崇信县| 滁州市| 石棉县| 海丰县| 宣恩县| 海伦市| 嘉鱼县| 敦煌市| 兖州市| 沐川县| 宁安市| 临高县| 宝清县| 宝鸡市| 安国市| 长沙县| 大洼县| 治县。| 沂水县| 嘉峪关市| 金堂县|