链表快排
来源:互联网 发布:增值税发票模拟软件 编辑:程序博客网 时间:2024/06/08 19:56
class Solution{public:ListNode* sortList(ListNode* head){if(head == NULL || head->next == NULL)return head;ListNode* begin = head, *end = NULL;Quicksort_list(begin, end);return begin;}void Quicksort_list(ListNode* begin, ListNode* end){ListNode* curnode = NULL;if(begin != end){curnode = partition(begin, end);Quicksort_list(begin, curnode);Quicksort_list(curnode->next, end);}}ListNode* partition(ListNode* begin, ListNode* end){int key = begin->val;ListNode* p = begin, * q = p->next;while(q){if(q->val < key) //精髓{p = p->next;swap(p->val, q->val);}q = q->next;}swap(begin->val, p->val);return p;}void scanList(ListNode* head){while(head != NULL){cout<<head->val;if(head->next != NULL)cout<<"->";head = head->next;}}};
0 0
- 链表快排
- 链表快排
- [各种面试题] 链表快排
- leetcode——链表快排
- 链表快排和时间复杂度分析
- springMvc jmeter 典型请求
- [编程题] 奖学金 路灯
- Meteor开发环境的搭建及简单实用
- 最初TWInClose3算法20170214
- Airbnb-Lottie-android
- 链表快排
- 如何编辑pdf文件并添加文本内容
- #pragma once与#ifndef的区别
- Android/Linux/大数据/前端 知识库
- thinkphp 引入第三方类库的方法
- 题目1481:Is It A Tree?
- 正则表达式详解
- [RK3288][Android6.0] 调试笔记 --- 使用竖屏软件后无法回到横屏状态
- hdoj2000