python单链表排序
时间: 2023-11-07 20:04:17 浏览: 108
单链表排序
使用python对单链表进行排序可以采用以下步骤:
1. 遍历单链表,将节点的值存储在一个列表中。
2. 使用内置的排序函数(例如sorted)对列表进行排序。
3. 创建一个新的链表,并将排序后的列表中的值依次添加到新链表中。
以下是对单链表进行排序的示例代码:
```python
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def sortList(head):
# Step 1: Traverse the linked list and store the values in a list
values = []
curr = head
while curr:
values.append(curr.val)
curr = curr.next
# Step 2: Sort the list of values
sorted_values = sorted(values)
# Step 3: Create a new linked list with sorted values
dummy = ListNode(0)
curr = dummy
for val in sorted_values:
curr.next = ListNode(val)
curr = curr.next
return dummy.next
```
请注意,这里假设输入的链表是一个单链表,并且每个节点都有一个整数值。
阅读全文