一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 472|回复: 3
收起左侧

[CareerCup] 【第三轮】8.3-8.9 CareerCup 9.7

[复制链接] |试试Instant~ |关注本帖
林微熙 发表于 2014-8-4 09:12:16 | 显示全部楼层 |阅读模式

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

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

x
9.7 Implement the "paint fill" function that one might see on many image editing programs. That is, given a screen (represented by a two-dimensional array of colors),
a point, and a new color, fill in the surrounding area until the color changes from the original color.




回复解法可以按照以下格式来



【解题思路】
【时间复杂度】
【空间复杂度】
【gist link】
---------------OPTional,如果觉得test case比较好,欢迎写出来分享----------------------
【test case】

圆梦梦剧场 发表于 2014-8-8 23:25:26 | 显示全部楼层
【解题思路】
depth first search
for each pixel which need to be changed color, search its four neighbors


【时间复杂度】
O(mn)


【空间复杂度】
O(mn)


【gist link】
https://gist.github.com/happyWinner/3e03b08e8c394bdfdb4d

回复 支持 反对

使用道具 举报

grassgigi 发表于 2014-8-17 11:40:15 | 显示全部楼层
【解题思路】
Start from the point, recursively trying to fill in both four directions
* check if the point is valid(not out of range)
* check if color is same as the color we want to change from.
* track where is the previous position prevent back tracking

【时间复杂度】
O(X*Y)

【空间复杂度】
O(1)

【gist link】
https://gist.github.com/chrislukkk/cc3970a0f22c06443b08
回复 支持 反对

使用道具 举报

bitcpf 发表于 2014-9-22 01:00:05 | 显示全部楼层
【解题思路】
Start from the input point,
1. check if the point in the screen (x,y range)
2. check if the point match the old color
return if the point does not qualify
change the point's color
move to the 4 directions
【时间复杂度】
O(M*N)
【空间复杂度】
O(1)
【gist link】
https://gist.github.com/bitcpf/7b984da0cdb9b34de7a5
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

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

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-7 00:22

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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