近期论坛无法登录的解决方案


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 2701|回复: 15
收起左侧

PocketGem 第一輪電面

[复制链接] |试试Instant~ |关注本帖
dancontra 发表于 2016-8-25 06:14:21 | 显示全部楼层 |阅读模式

2016(7-9月) 码农类 硕士 全职@PoketGem - 网上海投 - 技术电面 |Otherfresh grad应届毕业生

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

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

x
一開始問我知不知道任何Shortest Path的演算法,我想到了Dijkstra,但實在沒有認真讀過,所以跟他說沒有印象。


接著給我一張地圖,像是以下這樣
['02111',
'01001',
'01001',
'01003',]

. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
0: can't pass. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
1: can pass
. visit 1point3acres.com for more.2: starting point
3: goal point

問我怎麼樣能夠找到從2到3的最短路徑,一個點能夠走的方向只有上下左右四個方向,. From 1point 3acres bbs
我大概解釋了一下怎麼做之後,他接著再給我下面的地圖:
.鏈枃鍘熷垱鑷1point3acres璁哄潧
['02111',
'01001',
'00001',
'00ab1',
'11A11',

'1000B',. 1point3acres.com/bbs
'11001',

'01003',]
. from: 1point3acres.com/bbs


A: door;  a: key to the door A. 1point 3acres 璁哄潧
B: door;  b: key to the door B
...
Z:..... from: 1point3acres.com/bbs

一樣要求從2到3的最短路徑,但如果遇到door A的時候,手上必須握有key a才能通過。
他題目只有列出"Find the shortest path between start to the goal",
要自己寫method的定義,包含input、output,沒有寫main測試,因為他大概看不下去,中間就打斷我了。

面試官沒有什麼口音,通話品質也還不錯,題目也不算太難,過程中也會提示哪裡寫錯了
但這是找工作以來第一次電面,該注意到的很多細節都沒注意到,估計大概是沒希望了。
希望上面的題目能夠幫到地裡的朋友們。-google 1point3acres





评分

1

查看全部评分

本帖被以下淘专辑推荐:

 楼主| dancontra 发表于 2016-8-25 06:24:27 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
arksha 发表于 2016-8-25 06:20
lz 是收到oa之后做完给的电面么?

對的。7/25 申請,8/3收到OA邀請,8/11做完OA,8/16收到電面邀請,剛剛電面完
回复 支持 1 反对 0

使用道具 举报

arksha 发表于 2016-8-25 06:20:27 | 显示全部楼层
关注一亩三分地微博:
Warald
lz 是收到oa之后做完给的电面么?
回复 支持 反对

使用道具 举报

caiqi8877 发表于 2016-8-25 07:00:10 | 显示全部楼层
楼主第二问是怎么做的呢?
回复 支持 反对

使用道具 举报

 楼主| dancontra 发表于 2016-8-25 11:29:58 | 显示全部楼层
caiqi8877 发表于 2016-8-25 07:00
楼主第二问是怎么做的呢?

我用BFS再加上一個set來存目前手上有的key,
但這裡要注意的是,把新的點放進queue的時候,要copy一個新的set進去,
因為走到不同的path時,手上有的key會不一樣
回复 支持 反对

使用道具 举报

小核桃桃 发表于 2016-9-2 00:57:07 | 显示全部楼层
谢谢楼主!我想问下 这道题能走回头路么?
回复 支持 反对

使用道具 举报

 楼主| dancontra 发表于 2016-9-2 02:05:29 | 显示全部楼层
小核桃桃 发表于 2016-9-2 00:57. Waral 鍗氬鏈夋洿澶氭枃绔,
谢谢楼主!我想问下 这道题能走回头路么?

可以的,倒不如說在某些情況下,必須走回走過的路,否則無法到達終點。

例如說,當最短路徑上有一個分岔路口通往兩條除了這個分岔路口以外不相通的路,
其中一條可以拿到Key A,另一條則是會走到門A,
如果這條最短路徑一定要先經過門A才能到達終點,我們必須先走能拿到Key A的那條路,
然後再回頭走到分岔路口,接著再走到門A,最後是終點。
回复 支持 反对

使用道具 举报

小核桃桃 发表于 2016-9-2 05:59:44 | 显示全部楼层
dancontra 发表于 2016-9-2 02:05
可以的,倒不如說在某些情況下,必須走回走過的路,否則無法到達終點。

例如說,當最短路徑上有一個分 ...

这样。。。我觉得还挺难得 不知道怎么做😢
回复 支持 反对

使用道具 举报

cicean 发表于 2016-9-14 04:40:22 | 显示全部楼层
这还叫不难,我感觉已经非常难了。还有钥匙, 都崩溃了,游戏公司果然不一样
回复 支持 反对

使用道具 举报

cicean 发表于 2016-9-14 05:05:17 | 显示全部楼层
楼主是要输出路径么? 还是问最短路径长度?
. 鍥磋鎴戜滑@1point 3 acres
补充内容 (2016-9-14 05:13):.鐣欏璁哄潧-涓浜-涓夊垎鍦
楼主这个给的是String[] 么?
回复 支持 反对

使用道具 举报

 楼主| dancontra 发表于 2016-9-14 08:57:42 | 显示全部楼层
cicean 发表于 2016-9-14 04:40
这还叫不难,我感觉已经非常难了。还有钥匙, 都崩溃了,游戏公司果然不一样

如果直接解這題的話(有門跟Key)是蠻難的,但是因為過程中他一步步確認我理解當下的問題,也等我提出對的解法or方向之後,再提出其他限制,所以至少到了全部條件都提出來之後,知道要怎麼解。

但他們家是有名的Bar很高的公司,所以如果面他們家時,遇到很難的題目,也別太過在意,當做練習就好了。
回复 支持 反对

使用道具 举报

 楼主| dancontra 发表于 2016-9-14 08:59:41 | 显示全部楼层
cicean 发表于 2016-9-14 05:05. 鍥磋鎴戜滑@1point 3 acres
楼主是要输出路径么? 还是问最短路径长度?.1point3acres缃

补充内容 (2016-9-14 05:13):
.1point3acres缃
輸出最短路徑長度就好了。

他沒有給輸入格式,要自己確認,我最後是跟他商量用char[][]。
回复 支持 反对

使用道具 举报

窗外一棵树 发表于 2016-10-9 10:10:57 | 显示全部楼层
楼主 请问一下你做bfs的时候 如果不记录visited过的点,那不是很容易就死循环了吗 如何解决这个问题啊。
回复 支持 反对

使用道具 举报

shiloh00 发表于 2016-10-10 06:12:56 | 显示全部楼层
窗外一棵树 发表于 2016-10-9 10:10
楼主 请问一下你做bfs的时候 如果不记录visited过的点,那不是很容易就死循环了吗 如何解决这个问题啊。

. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴可以把访问过的点改成比如说8, 然后遍历完之后再改回来。
回复 支持 反对

使用道具 举报

shiloh00 发表于 2016-10-10 06:19:54 | 显示全部楼层
感觉这个题目如果用dfs还是比较简单做的 在新添加两个global的变量来记录有没有拿到a or b 然后再到达AB的时候判断一下手里有没有a,b就行了
回复 支持 反对

使用道具 举报

aifer 发表于 2016-10-26 12:59:38 | 显示全部楼层
shiloh00 发表于 2016-10-10 06:19
感觉这个题目如果用dfs还是比较简单做的 在新添加两个global的变量来记录有没有拿到a or b 然后再到达AB的 ...

dfs的话会遍历所有可能的解去找最短的路径。BFS只要找到最短路径就退出了。另外想问你一下,dfs的时候,你是如何避免在没有拿到钥匙的时候走回头路的?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-6-23 02:49

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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