博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
归并排序
阅读量:7231 次
发布时间:2019-06-29

本文共 814 字,大约阅读时间需要 2 分钟。

hot3.png

public class MergeSort extends Example {public static Comparable[] aux;public static void sort(Comparable[] a) { aux = new Comparable[a.length]; sort(a, 0, a.length - 1);}public static void sort(Comparable[] a, int lo, int hi) { if (hi <= lo) return; int mid = lo + (hi - lo) / 2; sort(a, lo, mid); sort(a, mid + 1, hi); merge(a, lo, mid, hi);}public static void merge(Comparable[] a, int lo, int mid, int hi) { int i = lo, j = mid + 1; for (int k = lo; k <= hi; k ++) aux[k] = a[k]; for (int k = lo; k <= hi; k ++) if (i > mid) a[k] = aux[j ++]; else if (j > hi) a[k] = aux[i ++]; else if (less(aux[j], aux[i])) a[k] = aux[j ++]; else a[k] = aux[i ++];}public static void main(String[] args) { Comparable []a = {3, 4, 2, 1, 3, 43, 2, 3}; sort(a); print(a);}}

转载于:https://my.oschina.net/u/1040123/blog/135828

你可能感兴趣的文章
续前篇-关于逆波兰表达式的计算
查看>>
【java】java学习之路-01-Linux基础(一)
查看>>
IIS下配置PHP
查看>>
netbeans 正则替换
查看>>
人月神话阅读笔记之三
查看>>
patchwork.ffmpeg.org 里面未被选中的优秀代码
查看>>
Redis命令
查看>>
银行卡二元实名认证
查看>>
图片存储
查看>>
Makefile伪目标
查看>>
《第五章 操作符和表达式》
查看>>
每周一荐:TotalCommand的文件夹同步功能
查看>>
html中表格td的宽度如何设置
查看>>
BZOJ 2457 [BeiJing2011] 双端队列
查看>>
RMI基础篇
查看>>
鼠标悬停在图片时出现×。然后删除图片
查看>>
CH5102 Mobile Service
查看>>
POJ3635 Full Tank
查看>>
XML的两种读取方法
查看>>
jquery插件制作
查看>>