五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

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

LeetCode-138-復制帶隨機指針的鏈表

2022-01-18 21:45 作者:雄獅虎豹  | 我要投稿

復制帶隨機指針的鏈表

題目描述:給你一個長度為 n 的鏈表,每個節(jié)點包含一個額外增加的隨機指針 random ,該指針可以指向鏈表中的任何節(jié)點或空節(jié)點。

構造這個鏈表的 深拷貝。 深拷貝應該正好由 n 個 全新 節(jié)點組成,其中每個新節(jié)點的值都設為其對應的原節(jié)點的值。新節(jié)點的 next 指針和 random 指針也都應指向復制鏈表中的新節(jié)點,并使原鏈表和復制鏈表中的這些指針能夠表示相同的鏈表狀態(tài)。復制鏈表中的指針都不應指向原鏈表中的節(jié)點 。

例如,如果原鏈表中有 X 和 Y 兩個節(jié)點,其中 X.random --> Y 。那么在復制鏈表中對應的兩個節(jié)點 x 和 y ,同樣有 x.random --> y 。

返回復制鏈表的頭節(jié)點。

用一個由 n 個節(jié)點組成的鏈表來表示輸入/輸出中的鏈表。每個節(jié)點用一個 [val, random_index] 表示:

  • val:一個表示 Node.val 的整數(shù)。

  • random_index:隨機指針指向的節(jié)點索引(范圍從 0 到 n-1);如果不指向任何節(jié)點,則為 ?null 。 你的代碼 只 接受原鏈表的頭節(jié)點 head 作為傳入?yún)?shù)。

示例說明請見LeetCode官網(wǎng)。

來源:力扣(LeetCode) ??

鏈接:https://leetcode-cn.com/problems/copy-list-with-random-pointer/ ??

著作權歸領扣網(wǎng)絡所有。商業(yè)轉(zhuǎn)載請聯(lián)系官方授權,非商業(yè)轉(zhuǎn)載請注明出處。

解法一:鏈表遍歷

  • 首先,如果鏈表為空,直接返回。

  • 否則,按順序遍歷鏈表,用一個HashMap用來存舊的節(jié)點和copy節(jié)點映射,遍歷過程如下:

    • 如果當前節(jié)點已經(jīng)copy過,則從mappings中??;否則copy一個;

    • 判斷當前節(jié)點如果存在random指針,判斷當前節(jié)點的random已經(jīng)copy過,則從mappings中??;否則copy一個。

  • 最后,返回copy的鏈表。


【每日寄語】 年輕的朋友們,當你們發(fā)現(xiàn)自己的專業(yè)自己走一條路不通的時候,不要拒絕其他的方向,因為很多時候,正是你陌生的那條路帶給你光明。



LeetCode-138-復制帶隨機指針的鏈表的評論 (共 條)

分享到微博請遵守國家法律
西平县| 泰兴市| 平塘县| 肥西县| 全州县| 綦江县| 汾阳市| 天峻县| 清原| 中超| 呼图壁县| 昌吉市| 镇巴县| 德江县| 南充市| 竹溪县| 临泉县| 靖江市| 乐山市| 弋阳县| 穆棱市| 前郭尔| 乡城县| 沂水县| 金坛市| 凌海市| 晋州市| 城口县| 大庆市| 鹤庆县| 茌平县| 永年县| 绵竹市| 家居| 通山县| 马尔康县| 开阳县| 乐至县| 嘉兴市| 蓬安县| 辰溪县|