利用单链表将元素从大到小排序
时间: 2023-05-20 22:07:10 浏览: 132
单链表快速排序
可以使用冒泡排序或者快速排序来实现单链表元素从大到小排序。以下是使用冒泡排序的示例代码:
```python
class Node:
def __init__(self, val):
self.val = val
self.next = None
def bubble_sort(head):
if not head or not head.next:
return head
dummy = Node(0)
dummy.next = head
end = None
while end != dummy.next:
p = dummy
while p.next != end and p.next.next:
if p.next.val < p.next.next.val:
first = p.next
second = p.next.next
p.next = second
first.next = second.next
second.next = first
p = p.next
end = p.next
return dummy.next
```
这个函数接受一个单链表的头节点,返回一个排好序的单链表的头节点。
阅读全文