数据结构 链表(第7、8天)

141.环形链表

class Solution:
def hasCycle(self, head: ListNode) -> bool:
while fast is not None and fast.next is not None:
fast = fast.next.next
slow = slow.next
if fast == slow:
return True
return False


21. 合并两个有序链表

class Solution:
def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) -> Optional[ListNode]:
dummy = ListNode(0)
if  list2 is None:
return list1
elif list1 is None:
return list2

cur = dummy

while list1 is not None and list2 is not None:
if (list1.val <= list2.val):
cur.next = list1
list1 = list1.next
else:
cur.next = list2
list2 = list2.next
cur = cur.next

if list1 is not None:
cur.next = list1
elif list2 is not None:
cur.next = list2

return dummy.next


203. 移除链表元素

class Solution:
def removeElements(self, head: ListNode, val: int) -> ListNode:
tm = dm
while tm.next:
if tm.next.val == val:
tm.next = tm.next.next
else:
tm = tm.next
return dm.next


206. 反转链表

class Solution:
def reverseList(self, head: ListNode) -> ListNode:

t = res
while  t.next != None:
t = t.next
return  res


83. 删除排序链表中重复元素

class Solution:
def deleteDuplicates(self, head: ListNode) -> ListNode:

else:

return h


|
5天前
【数据结构OJ题】合并两个有序链表

24 8
|
6天前
【数据结构OJ题】移除链表元素

12 2
|
6天前
【数据结构OJ题】链表中倒数第k个结点

9 1
|
6天前
|

【数据结构】双链表

14 1
|
4天前
【数据结构OJ题】链表分割

5 0
|
4天前
【数据结构OJ题】链表的回文结构

7 0
|
6天前
【数据结构OJ题】链表的中间结点

9 0
|
6天前
【数据结构OJ题】反转链表

10 0
|
19天前
|

Java数据结构与算法：双向链表
Java数据结构与算法：双向链表
17 0
|
19天前
|

Java数据结构与算法：循环链表
Java数据结构与算法：循环链表
16 0