归并排序 单链表
来源:互联网 发布:苹果手机 解压软件 编辑:程序博客网 时间:2024/06/05 16:55
package com.weibo.linkedlist;
public class GuibingSortList {
staticclass Node {
public Nodenext;
publicint val;
}
public static Node merge(Node a, Node b) {
Node dummyHead,curr;
dummyHead =new Node();
curr =dummyHead;
while (a !=null && b !=null) {
if (a.val <=b.val) {
curr.next =a;
a =a.next;
} else {
curr.next =b;
b =b.next;
}
curr =curr.next;
}
curr.next = (a ==null) ? b :a;
returndummyHead.next;
}
public static Node getMiddle(Node head) {
if (head ==null) {
returnhead;
}
Node slow,fast;
slow =fast = head;
while (fast.next !=null && fast.next.next !=null) {
slow =slow.next;
fast =fast.next.next;
}
returnslow;
}
public static Node merge_sort(Node head) {
if (head ==null || head.next ==null) {
returnhead;
}
Node middle = getMiddle(head);
Node sHalf =middle.next;
middle.next =null;
return merge(merge_sort(head), merge_sort(sHalf));
}
}
- 单链表归并排序
- 单链表的归并排序
- 单链表的归并排序
- 单链表的归并排序
- 单链表归并排序
- 单链表归并排序
- 单链表的归并排序
- 单链表进行归并排序
- 单链表归并排序
- 单链表的归并排序
- 单链表的归并排序
- 单链表的归并排序
- Java单链表归并排序
- 单链表的归并排序
- 归并排序 单链表
- 单链表的归并排序
- 单链表归并排序java
- 单链表的归并排序
- Performance Analyzer性能分析器
- WePY 在小程序性能调优上做出的探究
- 最新的100个微信小程序-极乐Store
- new Date(date).getTime()兼容性
- 目标跟踪VOT2016 BenchMark评价标准介绍
- 归并排序 单链表
- Redis的几种数据结构,和各自应用场景的列举示例
- 【c++小程序】1.动态数组实现图书录入程序
- Xposed 包名类名加密要如何hook?多dex如何查找对应的方法?
- 安卓巨图加载及触摸拖动浏览,仿鸿洋大神使用BitmapRegionDecoder。
- oracle11g 修改字符集 修改为ZHS16GBK
- 如何利用缺陷的管理提高软件开发质量三 -如何利用时间点发现缺陷数
- MySQL错误ERROR 2002 (HY000): Can't connect to local MySQL server through socket
- MySQL常用的面试题