leetcode 鍊錶(簡單)

2021-10-02 11:25:30 字數 1008 閱讀 6058

鍊錶這部分的題比較簡單

21合併兩個鍊錶

類似於歸併排序,略

83刪除鍊錶中重複元素

判斷下乙個是否於當前相同,相同則跳過

listnode*

deleteduplicates

(listnode* head)

else

}return head;

}

環形鍊錶

兩種解法:

是使用快慢指標,但我做的時候死迴圈了

是使用set迭代器

bool

hascycle

(listnode *head)

return

false

;}

160相交鍊錶

先計算兩個鍊錶的長度,然後先對長的遍歷,至相同長度的時候再兩個指標同時移動,判斷相同元素

203移除表中元素

類似於刪除重複元素,略

206反轉鍊錶

絕活

listnode*

reverselist

(listnode* head)

return head;

}

234回文鍊錶

使用快慢指標找到鍊錶中點,reverse 逆序後半部分,從頭、中點開始比較是否相同。

**略237刪除表中節點

1290二進位製煉表轉整數

學習了一種新的二進位制轉換方法

int

getdecimalvalue

(listnode* head)

return num;

}

LeetCode鍊錶簡單題

一 21合併兩個有序鍊錶 如下 class solution def mergetwolists self,l1 listnode,l2 listnode listnode 首先對特殊情況進行處理,l1 l2 為空的時候 ifnot l1 and l2 這個表示式的意思只要l1 l2 不全為真就符合...

leetcode 簡單 206 反轉鍊錶

題目 思路1 雙指標 1 cur.next指向pre,tmp暫存cur.next 2 pre和cur前進一格,注意 不能讓pre head,這樣還要判斷pre.next存在不 definition for singly linked list.class listnode def init self...

LeetCode 簡單 鍊錶 141 環形鍊錶

給定乙個鍊錶,判斷鍊錶中是否有環。如果鍊錶中有某個節點,可以通過連續跟蹤 next 指標再次到達,則鍊錶中存在環。為了表示給定鍊錶中的環,我們使用整數 pos 來表示鍊錶尾連線到鍊錶中的位置 索引從 0 開始 如果 pos 是 1,則在該鍊錶中沒有環。注意 pos 不作為引數進行傳遞,僅僅是為了標識...