Integer的使用问题
来源:4-5 基础堆排序和Heapify
Mark1900
2017-08-15
MaxHeap<Integer> maxHeap = new MaxHeap<Integer>(100);
int N = 100; // 堆中元素个数
int M = 100; // 堆中元素取值范围[0, M)
这里为什么要创建对象的时候加上了(100),integer是一种对象的引用的话,如果用浮点数是也可以进行堆排序的吗,小白一个希望大佬们帮忙一下
写回答
2回答
-
(100)是构造函数,初始化堆的大小,MaxHeap<Integer> <>里可以是重载了比较操作符<的任何数据类型
122017-08-17 -
liuyubobobo
2017-08-17
MaxHeap<Integer> maxHeap = new MaxHeap<Integer>(100); 这句话中的100的定义,可以构造函数中的参数定义啊:)如下:
// 构造函数, 构造一个空堆, 可容纳capacity个元素 public MaxHeap(int capacity){ data = (Item[])new Comparable[capacity+1]; count = 0; this.capacity = capacity; }
我们在这个课程中创建的大多数类,都使用了泛型来兼容多种数据类型,所以如果想使用浮点数,只需要使用Double或者Float就好了,比如:
MaxHeap<Double> maxHeap = new MaxHeap<Integer>(100); MaxHeap<Float> maxHeap = new MaxHeap<Integer>(100);
112017-08-17
相似问题