为什么无法实例化一个PriorityQueue里面的商店内部数字

时间:2016-02-18 22:09:03

标签: java queue

问题如何找到第n个丑陋的数字,这个数字只有因子3,5,6。对于那个问题,设计一个算法来找到第k个丑陋的 数。为了解决这个问题,我使用PriorityQueue存储可能 合格的丑陋数字,PriorityQueue将按升序对数字进行排序。 但是,如果我以下列方式初始化队列,则会出现错误 “意外类型,队列队列=新的PriorityQueue()”。

public long kthPrimeNumber(int k) {
    // write your code here
    if(k<=0){
        return -1;
    }
    Queue<int> queue = new PriorityQueue<int>();
    queue.add(3);
    queue.add(5);
    queue.add(7);

    for(int i=1; i<k;i++){
        int curr = (int)queue.poll();
        queue.add(curr*3);
        queue.add(curr*5);
        queue.add(curr*7);

    }
    return (long)((int)queue.poll());

}

1 个答案:

答案 0 :(得分:1)

您不能将原始类型用作泛型类型参数。你需要这样的东西

Queue<Integer> queue = new PriorityQueue<Integer>();