就是简单的HashMap
登录 | 论坛导航 -> 华新鲜事 -> 创业求职 | 本帖共有 2 楼,分 1 页, 当前显示第 1 页 : 本帖树形列表 : 刷新 : 返回上一页
<<始页  [1]  末页>>
作者:滚雪球 (等级:11 - 出神入化,发帖:11187) 发表:2017-12-21 15:52:17  楼主  关注此帖
今天上午去参加面试的java题目, 这个该怎么做? 题目: 需要存储如下信息: +Name+ + country+ John Canada Bob USA Tom USA Alice Canada Alan Canada Peter UK 现在删除数据,让每个country只保留一个人,只保留第一次出现那个 则剩下: +Name+ + country+ John Canada Bob USA Peter UK 请选择一种数据结构,并用java代码实现
就是简单的HashMap
然后loop一次,loop的时候把国家名字保存在一个临时的HashSet里面。
每到新一行数据都检查已经保存的HashSet里面有没有这个国家,有的话删除这个元素,没有的话加到HashSet里面。HashMap是有remove方法的,所以很容易实现,注意iterator不要乱就行了。
[本文发送自华新iOS App]
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
作者:滚雪球 (等级:11 - 出神入化,发帖:11187) 发表:2017-12-21 18:06:51  2楼
HashMap vs. LinkedHashMap 使用 LinkedHashMap,输出是:(正确) Original data is :{John=Canada, Bob=USA, Tom=USA, Alice=Canada, Alan=Canada, Peter=UK} Updated data is :{John=Canada, Bob=USA, Peter=UK} 使用 HashMap,输出是:(错误) Original data is :{Tom=USA, Bob=USA, Alice=Canada, Alan=Canada, John=Canada, Peter=UK} Updated data is :{Tom=USA, Alice=Canada, Peter=UK}
多谢指正
我以为顺序不会随便变的,基础太差。
[本文发送自华新iOS App]
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
论坛导航 -> 华新鲜事 -> 创业求职 | 返回上一页 | 本主题共有 2 篇文章,分 1 页, 当前显示第 1 页 | 回到顶部
<<始页  [1]  末页>>

请登录后回复:帐号   密码