Helun
V2EX  ›  Java

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

  •  
  •   Helun · Nov 19, 2018 · 3314 views
    This topic created in 2752 days ago, the information mentioned may be changed or developed.

    我在算法那本红书看到的这个自底向上的归并排序的算法,但是这个代码里面的 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)); 
        }
    }
    
    3 replies    2018-12-22 09:55:35 +08:00
    DsuineGP
        1
    DsuineGP  
       Nov 19, 2018
    实现了 Comparable 接口的对象数组啊...
    JohnZorn
        2
    JohnZorn  
       Nov 20, 2018
    多态
    Helun
        3
    Helun  
    OP
       Dec 22, 2018
    @DsuineGP 为什么要这样创建数组啊
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3867 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 93c8b4a0 · 35ms · UTC 05:04 · PVG 13:04 · LAX 22:04 · JFK 01:04
    ♥ Do have faith in what you're doing.