传说中的谷歌招聘委员会成员之一,从幕后走出来,教你学系统设计!


一亩三分地论坛

 找回密码
 获取更多干活,快来注册
天天打游戏、照样领工资、还办H1B
这份工作你要不要?
把贵司招聘信息放这里
查看: 1807|回复: 14
收起左侧

G 家 2015 February 2 Phone面试

[复制链接] |试试Instant~ |关注本帖
seashore115 发表于 2015-2-10 10:54:25 | 显示全部楼层 |阅读模式

2015(1-3月) 码农类 硕士 全职@Google - 网上海投 - 技术电面 |Pass

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

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

x
1. Roman to integer (Leetcode)
2. Return number of blocks in the set<Node *> Block defines in the picture below

鏉ユ簮涓浜.涓夊垎鍦拌鍧.
                               
登录/注册后可看大图


评分

2

查看全部评分

fsc111 发表于 2015-3-11 07:01:56 | 显示全部楼层
lz能仔细讲讲第二题吗,没怎么看懂
回复 支持 反对

使用道具 举报

 楼主| seashore115 发表于 2015-3-11 07:08:14 | 显示全部楼层
fsc111 发表于 2015-3-11 07:01
lz能仔细讲讲第二题吗,没怎么看懂

比如说 原来的double circle linkedlist 是 a<->b<->d<->r之后我把这些node都放入set中,因为set的是无序的,所以有可能是按adrb这个循序排进去的。这个例子中,dr是原本连着的算一个block,ab原本是连着的算一个block,返回数字2
回复 支持 反对

使用道具 举报

joybing 发表于 2015-3-11 09:41:11 | 显示全部楼层
seashore115 发表于 2015-3-11 07:08
比如说 原来的double circle linkedlist 是 abdr之后我把这些node都放入set中,因为set的是无序的,所以 ...

这一题楼主是怎么做的?
写代码的时候,题目给你的输入参数是什么?
回复 支持 反对

使用道具 举报

 楼主| seashore115 发表于 2015-3-11 09:46:14 | 显示全部楼层
只有set<LinkedList *> & dict这个参数。我是暴力破解的当时,时间不多想不出什么便捷的方法。好在过了
回复 支持 反对

使用道具 举报

bobingmm 发表于 2015-3-15 12:08:03 | 显示全部楼层
楼主可以讲一下怎么暴力破解的吗?
回复 支持 反对

使用道具 举报

 楼主| seashore115 发表于 2015-3-16 01:21:39 | 显示全部楼层
bobingmm 发表于 2015-3-15 12:08
楼主可以讲一下怎么暴力破解的吗?

就是一次遍历set中的node如果pre pointer 或者 next pointer 找到的话就存在一个vector里,继续遍历上一个或下一个node。如果找不到,erase掉set中找到的节点,count++。如果pre pointer 或者 next pointer找不到的话,删掉当前节点在set中,count++。最后return count
回复 支持 反对

使用道具 举报

mattsun 发表于 2015-3-16 07:18:16 | 显示全部楼层
seashore115 发表于 2015-3-16 01:21
就是一次遍历set中的node如果pre pointer 或者 next pointer 找到的话就存在一个vector里,继续遍历上一 ...

题目的意思是有些节点可能不在set里面吗?不然的话就上面abrd的例子不是四个节点都能通过prev pointer在set里找到,那block的数量不是永远是1吗
回复 支持 反对

使用道具 举报

 楼主| seashore115 发表于 2015-3-16 07:51:38 | 显示全部楼层
mattsun 发表于 2015-3-16 07:18
题目的意思是有些节点可能不在set里面吗?不然的话就上面abrd的例子不是四个节点都能通过prev pointer在se ...

sorry, 没有说清,我是说按顺序遍历
回复 支持 反对

使用道具 举报

mattsun 发表于 2015-3-16 11:44:10 | 显示全部楼层
seashore115 发表于 2015-3-16 07:51
sorry, 没有说清,我是说按顺序遍历

就是说在set里面的顺序和本来的linkedlist里面顺序是不是一样,一样的部分是一个block,是这样吗?
回复 支持 反对

使用道具 举报

 楼主| seashore115 发表于 2015-3-16 11:46:04 | 显示全部楼层
mattsun 发表于 2015-3-16 11:44
就是说在set里面的顺序和本来的linkedlist里面顺序是不是一样,一样的部分是一个block,是这样吗?
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
是的。。。。。。。字数限制
回复 支持 反对

使用道具 举报

williamshyy 发表于 2015-3-19 10:54:44 | 显示全部楼层
seashore115 发表于 2015-3-11 07:08.1point3acres缃
比如说 原来的double circle linkedlist 是 abdr之后我把这些node都放入set中,因为set的是无序的,所以 ...

bd算一个block吗?还是block 给你定好可以是啥了?
回复 支持 反对

使用道具 举报

 楼主| seashore115 发表于 2015-3-19 13:04:04 | 显示全部楼层
williamshyy 发表于 2015-3-19 10:54
bd算一个block吗?还是block 给你定好可以是啥了?

我的例子中不算,block没给你定好,需要自己找
回复 支持 反对

使用道具 举报

mm豆 发表于 2015-4-6 08:00:44 | 显示全部楼层
在set中,如果node用pre或next指针相连,就算是一个同一block? 不相连就不算同一个block?相当于找island的数量?
回复 支持 反对

使用道具 举报

 楼主| seashore115 发表于 2015-4-7 02:48:08 | 显示全部楼层
mm豆 发表于 2015-4-6 08:00
在set中,如果node用pre或next指针相连,就算是一个同一block? 不相连就不算同一个block?相当于找island ...

嗯嗯,是的啊。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-9-23 15:39

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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