一、leetcode地址
https://leetcode.com/problems/sort-list/
二、问题描述
三、代码实现
语言:Python3
代码:
class Solution:
def sortList(self, head: ListNode) -> ListNode:
if not head or not head.next:
return head
else:
temp0 = head
temp1 = head.next
while temp1 and temp1.next:
temp0 = temp0.next
temp1 = temp1.next.next
head1 = temp0.next
temp0.next = None
return self.mergeTLists(self.sortList(head),self.sortList(head1))
def mergeTLists(self,head1,head2):
if not head1:
return head2
elif not head2:
return head1
else:
if head1.val > head2.val:
head1,head2 = head2,head1
res = self.mergeTLists(head1.next,head2)
head1.next = res
return head1