要回国了,写个简单的总结吧。

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投
内推多家公司面试
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
把贵司招聘信息放这里
系统
7分钟前
系统
18分钟前
系统
25分钟前
系统
26分钟前
系统
28分钟前
系统
33分钟前
系统
39分钟前
系统
40分钟前
系统
47分钟前
全站
Warald 说: MemorialDay大礼包之五:【新功能】高级模式发帖,图片框里添加“大图片上传”,upto20张X10M
52分钟前
系统
56分钟前
系统
56分钟前
系统
59分钟前
系统
59分钟前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
全站
Warald 说: MemorialDay大礼包之五:【新功能】小喇叭可以点击“发布”,可以在全局、板块或者帖子里发
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
全站
Warald 说: MemorialDay大礼包之四:【新功能】主题列表页显示图片,欢迎上图
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
系统
1小时前
全站
1小时前
系统
1小时前
系统
2小时前
系统
2小时前
系统
2小时前
系统
2小时前
系统
2小时前
全站
Warald 说: MemorialDay大礼包之二:【新功能】论坛开启用户全局威望值,每楼右上方均可投票。
2小时前
全站
Warald 说: MemorialDay大礼包之一:【新功能】发帖后,可以邀请朋友参与讨论(自动功能)
2小时前
查看: 949|回复: 1
收起左侧

[算法题] 问一道L 家的高频面经题吧

[复制链接] |试试Instant~ |关注本帖
我的人缘0
butterwang 发表于 2015-11-18 04:37:24 | 显示全部楼层 |阅读模式
  此人很可信:
 
0% (暂未有人投票) 【我投】
  此人瞎逼逼:
 
0% (暂未有人投票) 【我投】

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
求内容排序好的iterator的操作,union, intersect。也就是说实现先面两个方法。
Iterable<Integer> union(Iterator<Integer> a, Iterator<Integer>b) {}
Iterable<Integer> intersect(Iterator<Integer> a, Iterator<Integer> b) {}

其实题目本身并不难,尤其是如果输入输出是array, list 的话。关键是如果是iterator怎么办?call 了next() 指针就已经已走了啊?哪位高手能提供一个Java的代码啊?

上一篇:算法知识不扎实能直接刷CC150吗?
下一篇:最近刚面完F,买了一个月的leetcode会员,谁想刷一下新题又不想花钱的可以联系我。
我的人缘0
stellari 发表于 2015-11-19 08:55:31 | 显示全部楼层
  此人很可信:
 
0% (暂未有人投票) 【我投】
  此人瞎逼逼:
 
0% (暂未有人投票) 【我投】
输入是数组还是Iterator其实差别不大,因为你只需要正向扫描a和b即可,不需要回头看之前的内容。至于你说的“call了next()以后指针就已经已走了啊”,这确实是事实,但是我没理解这一点会引出什么问题。每次调用next()时,你肯定是会将这次调用next()的结果保存到一个变量中的,不会造成任何数据未处理的情况。

比如对
a: 12559
b: 55789
做intersect,

ca = a.next(); // 1
cb = b.next(); // 5
然后比较ca和cb的值,发现ca小,那么再ca=a.next(); == 2
ca还是小,再ca=a.next(); == 5
这下ca和cb相等了,那么把这个5加入结果。
于是再
ca = a.next();
cb = b.next();
发现两者又都是5,此时发现和结果的最后一个数字5重复,于是不做任何事。然后再
ca = a.next();
cb = b.next();
。。。
以此循环直至a和b都没有next为止。
回复 支持 反对

使用道具 举报

全球28万学生4.7分推荐
游客
请先登录

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2018-5-27 15:32

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表