力扣Top100

最小栈

Deque<Integer> stack1;
 Deque<Integer> stack2;
   public void pop() {
     //这里如果用==比较是比较两个Integer对象的地址,Integer能缓存(-128,127)这个范围的值,用==比较这个范围的值会返回true,超过这个范围用==比较就是不同的对象返回false,所以要equals进行比较,equals直接比较数值不比较地址   
     if (stack1.peek() == stack2.peek()) {
       stack1.pop();
       stack2.pop();
     } else {
       stack1.pop();
    }
 }

public boolean equals(Object obj) {
    if (obj instanceof Integer) {
        return value == ((Integer)obj).intValue();
    }
    return false;
}

 

比特位计数

posted @ 2021-09-28 12:06  hanabivvv  阅读(95)  评论(0编辑  收藏  举报