一、 题目描述
给定一个无序单链表,实现单链表的排序(按升序排序)。
示例1
输入:[1,3,2,4,5]
返回值:{1,2,3,4,5}
二、 解题思路
(一) 辅助数组
主要通过辅助数组实现链表的排序
1、遍历链表并将链表结点存储到数组 tmp 中
2、通过对 tmp 进行排序,实现链表结点的排序
3、构建新链表结点 result,遍历数组 tmp ,拼接新的返回链表
图解:
class Solution:
def sortInList(self , head ):
# write code here
if head == None or head.next == None:
return head
tmp = []
tmp.append(head.val)
# 遍历链表存储到数组中
while head.next:
head = head.next
tmp