头插法创建单链表并实现合并
时间: 2023-09-13 16:07:56 浏览: 91
以下是Python实现头插法创建单链表并实现合并的代码:
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def create_linked_list(arr):
head = ListNode()
for i in range(len(arr)):
node = ListNode(arr[i])
node.next = head.next
head.next = node
return head.next
def merge_linked_list(head1, head2):
dummy = ListNode()
cur = dummy
while head1 and head2:
if head1.val < head2.val:
cur.next = head1
head1 = head1.next
else:
cur.next = head2
head2 = head2.next
cur = cur.next
if head1:
cur.next = head1
if head2:
cur.next = head2
return dummy.next
其中,create_linked_list
函数接受一个数组,返回一个以数组元素为节点值的头插法创建的单链表;merge_linked_list
函数接受两个单链表的头结点,返回合并后的单链表的头结点。合并操作使用了归并排序的思想,将两个有序链表合并成一个有序链表。
阅读全文
相关推荐
















