# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param head ListNode类 the head node
# @return ListNode类
#
class Solution:
def sortInList(self , head: ListNode) -> ListNode:
# write code here
#获取头部节点
h = head
#创建一个排序数组
l = []
#当节点存在的时候,依次添加节点值到数组
while h:
l.append(h.val)
h = h.next
l.sort() #利用sort函数对数组进行升序排列
#创建新链表
h = head
i = 0 #索引从0开始
#把排完序的数组重新赋值给新的链表,此时的链表的所有节点都是按升序排列的
while h:
h.val = l[i]
h = h.next
i += 1
return head