(全)面试 软件开发工程师 算法题 含答案.docx
《(全)面试 软件开发工程师 算法题 含答案.docx》由会员分享,可在线阅读,更多相关《(全)面试 软件开发工程师 算法题 含答案.docx(22页珍藏版)》请在优知文库上搜索。
1、面试软件开发工程师算法题含答案1.从类似如下的文本文件中读取出所有的姓名,并打印出重复的姓名和重复的次数,并按重复次数排序:1.张三282,李四,353,张三284,王五355,张三286,李四357,赵六,288,田七,35程序代码如下(答题要博得用人单位的喜欢,包名用该公司,面试前就提前查好该公司的网址,如果查不到,现场问也是可以的。还要加上实现思路的注释):packagecom.huawei.interview;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importja
2、va.io.InputStreamReader;importjava.UtiLComparator;importjava.util.HashMap;importjava.UtiLIterator;importjava.util.Map;importjava.util.TreeSet;publicclassGetNameTest*paramargsVpublicstaticvoidmain(Stringargs)/InputStreamips=GetNameTest.class.getResourceAsStream(7comhuaweiinterviewinfo.txt);用上一行注释的代码和
3、下一行的代码都可以,因为info.txt与GetNameTeSt类在同一包下面,所以,可以用下面的相对路径形式Mapresults=newHashMapQ;InputStreamips=GetNameTest.class.getResourceAsStream(info.txt);BufferedReaderin=newBufferedReader(newInputStreamReader(ips);Stringline=null;try(while(line=in.readLine()!=null)(dealLine(linezresults);)sortResults(results);c
4、atch(IOExceptione)/TODOAuto-generatedcatchblocke.printStackTrace();)staticclassUser(publicStringname;publicIntegervalue;publicUser(StringnamezIntegervalue)(this.name=name;this.value=value;)Overridepublicbooleanequals(Objectobj)/TODOAuto-generatedmethodstub下面的代码没有执行,说明往treeset中增加数据时,不会使用到equals73)obo
5、oleanresult=super.equals(obj);System.out.println(result);returnresult;)privatestaticvoidsortResults(Mapresults)/TODOAuto-generatedmethodstubTreeSetSortedResuIts=newTreeSet(newComparator()publicintcompare(ObjectolzObjecto2)Useruserl=(User)ol;Useruser2=(User)o2;*如果CompareTo返回结果O,则认为两个对象相等,新的对象不会增加到集合中
6、去*所以,不能直接用下面的代码,否则,那些个数相同的其他姓名就打印不出来。*/returnuserl.value-user2.value;/returnuserl.valueuser2.value?-l:userl.value=user2.value?0:1;if(userl.valueuser2.value)return1;pareTo(user2.name););Iteratoriterator=results.keySet().iterator();while(iterator.hasNext()(Stringname=(String)iterator.next();Integerval
7、ue=(Integer)results.get(name);if(value1)sortedResults.add(newUser(name,value);)PrintResults(SortedResuIts);)privatestaticvoidprintResults(TreeSetSortedResuIts)(Iteratoriterator=sortedResults.iterator();while(iterator.hasNext()(Useruser=(User)iterator.next();System.out.println(user.name+user.value);)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全面试 软件开发工程师 算法题 含答案 面试 软件 开发 工程师 算法 答案