小白请教一下 Java 里面的 Comparable[]这是个什么数组啊

2018-11-19 13:03:56 +08:00
 Helun

我在算法那本红书看到的这个自底向上的归并排序的算法,但是这个代码里面的 Comparable[]数组是啥子啊,对象数组吗,麻烦大佬看一下,我百度只知道是实现了 Comparable 类是用来实现后比较数据的。没有看到 Comparable[]数组的东西。

public class MergeBU 
{ 
    private static Comparable[] aux;					// 归并所需的辅助数组
    
	public static void sort(Comparable[] a) 
    { 	// 进行 lgN 次两两归并
        int N = a.length;
        aux = new Comparable[N];
        for (int sz = 1; sz < N; sz = sz+sz) 			// sz: 子数组大小
            for (int lo = 0; lo < N-sz; lo += sz+sz) 	// lo: 子数组索引
                merge(a, lo, lo+sz-1, Math.min(lo+sz+sz-1, N-1)); 
    }
}
2683 次点击
所在节点    Java
3 条回复
DsuineGP
2018-11-19 15:51:10 +08:00
实现了 Comparable 接口的对象数组啊...
choice4
2018-11-20 20:02:08 +08:00
多态
Helun
2018-12-22 09:55:35 +08:00
@DsuineGP 为什么要这样创建数组啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/509222

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX