把微信小程序做网站,如何开发小程序?,宁波网站建设外包,怎么做电影网站吗假如有一些奶牛#xff0c;他们有种类的区别#xff0c;我们设黑色奶牛的id为1000010000#xff0c;白色为1#xff0c;诸如此类以此类推还有红色等各种颜色#xff0c;接下来给你一群奶牛的颜色id让你统计每种颜色的奶牛有几头。
如过我们使用数组显然1000010000会爆空间…假如有一些奶牛他们有种类的区别我们设黑色奶牛的id为1000010000白色为1诸如此类以此类推还有红色等各种颜色接下来给你一群奶牛的颜色id让你统计每种颜色的奶牛有几头。
如过我们使用数组显然1000010000会爆空间数组开不到那么大。可以考虑离散化由于编号不连续我们重新组织编号也可以考虑TreeMap利用《编号数量》来表示。两者各有好处。
使用离散化的话时间上可能由于TreeMap但是容易使人分不清变量。TreeMap由于会自动对编号key排序并且内部使用二分查找由于其是有序按照键的大小来排序所以找寻键和存储键值对会相对较快但是数据多了可能会爆时间所以还是小心使用但这仍是一个新用途。
可以参考这道题目
P3029 [USACO11NOV] Cow Lineup S - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
答案
利用TreeMap来解决P3029 [USACO11NOV] Cow Lineup S-CSDN博客