首页 > 其他 > 详细

Sort List

时间:2016-07-12 17:35:55      阅读:205      评论:0      收藏:0      [点我收藏+]

技术分享

采用归并排序,通过定义快、慢两个指针来找到中点,再采用之前的排序算法进行归并。

技术分享
ListNode *listSort(ListNode *head)
      {
          //定义快慢指针,找到链表中心
          ListNode *slow=head,*fast=head;
          while (fast->next!=nullptr&&fast->next->next!=nullptr)
          {
              slow = slow->next;
              fast = fast->next->next;
          }
          //分为两段
          fast = slow;
          slow = slow->next;
          fast->next = nullptr;

          ListNode *l1=listSort(head);
          ListNode *l2=listSort(slow);

          return mergeList(l1, l2);
      }
View Code

 

Sort List

原文:http://www.cnblogs.com/573177885qq/p/5664131.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!