热门

最新

红包

立Flag

投票

同城

我的

发布
as4589sd
阿啄debugIT
4 年前
trueas4589sd

如果使用Object作为HashMap的Key,应该怎么办呢?
答:
重写 hashCode() 和 equals() 方法

重写 hashCode() 是因为需要计算存储数据的存储位置,需要注意不要试图从散列码计算中排除掉一个对象的关键部分来提高性能,这样虽然能更快但可能会导致更多的Hash碰撞;

重写 equals() 方法,需要遵守自反性、对称性、传递性、一致性以及对于任何非null的引用值x,x.equals(null)必须返回false的这几个特性,目的是为了保证key在哈希表中的唯一性

你问我答
CSDN App 扫码分享
分享
评论
1
打赏
  • 复制链接
  • 举报
下一条:
#696 A;思路:贪心模拟;#include<stdio.h>int ai[100010];char ci[100010];int bi[100010];int main(){ int t; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); scanf("%s",ci); for(int i=0;i<n;i++) { if(ci[i]=='1')bi[i+1]=1; else bi[i+1]=0; } ai[1]=1; for(int i=2;i<=n;i++) { int x=ai[i-1]+bi[i-1]; if(x==0)ai[i]=1; else { x-=bi[i]; if(x==2)ai[i]=1; else if(x==0)ai[i]=1; else ai[i]=0; } } for(int i=1;i<=n;i++) { printf("%d",ai[i]); } printf("\n"); } return 0;}
立即登录