1、题目描述
给你链表的头结点 head
,请将其按 升序 排列并返回 排序后的链表 。
示例 1:
输入:head = [4,2,1,3] 输出:[1,2,3,4]
2、初始思路
2.1 思路
将链表中的值都进行保存,保存到列表中,后进行排序,然后对链表的每个节点依次赋值。
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, val=0, next=None):
# self.val = val
# self.next = next
class Solution:def sortList(self, head: Optional[ListNode]) -> Optional[ListNode]:cur = headlist1 = []while cur:list1.append(cur.val)cur = cur.nextlist1 = sorted(list1)#print(list1)cur = headi = 0while cur:cur.val = list1[i]cur = cur.nexti += 1return head