今天上午去参加面试的java题目, 这个该怎么做?
登录 | 论坛导航 -> 华新鲜事 -> 创业求职 | 本帖共有 4 楼,分 1 页, 当前显示第 1 页 : 本帖树形列表 : 刷新 : 返回上一页
<<始页  [1]  末页>>
作者:JavaProg (等级:2 - 初出茅庐,发帖:184) 发表:2017-12-21 14:21:12  楼主  关注此帖评分:
今天上午去参加面试的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代码实现
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
作者:JavaProg (等级:2 - 初出茅庐,发帖:184) 发表:2018-01-17 10:43:07  2楼
简单一点,附上代码,如果有要求,可以实现map接口,不过得改写一堆方法考点: 1,面向对象的Java编程,数据结构一般要写一个class 2,国家名不能重复,要考虑HasMap,把国家名作为一个key 3,先国家名输入者,后面不能update,考虑在改写put方法,检验是否存在重复。 import java.util.HashMap; import java.util.Map.Entry; public class MyMap { protected String name; protected String country; protected HashMap map = new HashMap(); public MyMap() {} public void put(String name, String country) { if(!map.containsKey(country)) { map.put(country, name); } } public String toString() { String s = ""; for(Entry e : map.entrySet()) { s += e.getValue() + " " + e.getKey() + "n"; } return s; } public static void main(String[] args) { MyMap myMap = new MyMap(); myMap.put("John", "Canada"); myMap.put("Bob", "USA"); myMap.put("Tom", "USA"); myMap.put("Alice", "Canada"); myMap.put("Alan", "Canada"); myMap.put("Peter", "UK"); myMap.put("Peter", "China"); System.out.println(myMap.toSt
多谢各位的代码了,非常好,都是牛人
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
作者:JavaProg (等级:2 - 初出茅庐,发帖:184) 发表:2018-01-17 10:44:47  3楼
最喜欢用python做这种数据结构类型的操作了origin = [ ('john', 'canada'), ('bob', 'usa'), ('tom', 'usa'), ('alice', 'canada'), ('alan', 'canada'), ('peter', 'uk') ] temp = [] def detect(t): if t[1] not in temp: temp.append(t[1]) return True return False print(list(filter(lambda t: detect(t), origin)))
多谢python代码,都好厉害
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
作者:JavaProg (等级:2 - 初出茅庐,发帖:184) 发表:2018-01-17 10:46:02  4楼
怎么这么久了还没settle呐FYI (more...)
厉害,高手啊,一行搞定
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
论坛导航 -> 华新鲜事 -> 创业求职 | 返回上一页 | 本主题共有 4 篇文章,分 1 页, 当前显示第 1 页 | 回到顶部
<<始页  [1]  末页>>

请登录后回复:帐号   密码