请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

学了差不多一半的内容了,今天突然做leetcode发现一个很奇怪的问题,不能用static?回到这里问问

今天做leetcode的901题Online Stock Span时,我在自己电脑上先进行了测试正确后放入leetcode,发现怎么样都不正确,然后经过自己的调试,也还是找不到问题的所在,在我最后想要放弃的时候,我删除了static,

ArrayList<Integer> list;
private static int size = -1;
private static int oldPrice;
private static int tail = -1;

public StockSpanner() {
     list = new ArrayList<>();
}

public int next(int price) {
    list.add(price);
    tail = tail + 1;
    return get(price);
}

private int get(int price){
    if(price < oldPrice){
        oldPrice = price;
        size = tail;
        return 1;
    }
    while (size != -1){
        if(list.get(size) > price)
            break;
        size--;
    }
    oldPrice = price;
    return tail - size ;
}

结果就正确了。是因为leetcode不支持类变量吗?(知道有点多余我这里用静态的话)

正在回答 回答被采纳积分+3

1回答

liuyubobobo 2019-01-26 02:04:14

我测试了一下,确实如此。但具体怎么回事儿,我也不清楚了,需要给Leetcode官方写信询问:)


继续加油!:)

1 回复 有任何疑惑可以回复我~
  • 提问者 jiangkerLove #1
    好的,谢谢老师
    回复 有任何疑惑可以回复我~ 2019-01-26 09:29:19
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信