楼主: discoveryi
跳转到指定楼层
上一主题 下一主题
收起左侧

9月4号google电面【已挂】

🔗
say543 2015-9-13 11:11:25 | 只看该作者
全局:
edna 发表于 2015-9-13 01:37
首先判断有没有合法输出,只要比较最高频出现的次数t,要求的间隔k,和总长度n之间是否满足n > (t-1)*k就可 ...

觉得因该是n>=t*k-1 而不是n>(t-1)*k? LZ可以跑看看这个example
"A", "B", "C", "A", "B", "C", "A",
n=7
k = 3
t = 3
回复

使用道具 举报

🔗
edna 2015-9-13 13:40:28 | 只看该作者
全局:
say543 发表于 2015-9-13 11:11
觉得因该是n>=t*k-1 而不是n>(t-1)*k? LZ可以跑看看这个example
"A", "B", "C", "A", "B", "C", "A",
n ...

首先,你这个例子是一个正确情况,所以按照我给出的,n>(t-1)*k, 7 > (3-1)*3,没问题啊。
回复

使用道具 举报

🔗
zxy_snow 2015-9-13 13:41:01 | 只看该作者
全局:
mint0715 发表于 2015-9-13 06:37
http://www.geeksforgeeks.org/rearrange-a-string-so-that-all-same-characters-become-at-least-d-distan ...

这个里面的解法是错的啊
aabbcc,2 就不对
回复

使用道具 举报

🔗
mint0715 2015-9-13 14:25:18 | 只看该作者
全局:
zxy_snow 发表于 2015-9-13 13:41
这个里面的解法是错的啊
aabbcc,2 就不对

对你发现问题了,直接贪心从高频隔d挨个放进去是错的
所以请看里面下面的评论。
回复

使用道具 举报

🔗
zxy_snow 2015-9-13 14:36:05 | 只看该作者
全局:
mint0715 发表于 2015-9-13 14:25
对你发现问题了,直接贪心从高频隔d挨个放进去是错的
所以请看里面下面的评论。

http://articles.leetcode.com/201 ... hone-interview.html

这里的解法貌似是对的。
我按照这个解法写了一遍,生成了几万个样例验证了下,没出错。。
回复

使用道具 举报

🔗
zxy_snow 2015-9-13 14:37:40 | 只看该作者
全局:
mint0715 发表于 2015-9-13 14:25
对你发现问题了,直接贪心从高频隔d挨个放进去是错的
所以请看里面下面的评论。

就是复杂度很高,是n*m,m是不同值的个数,姑且认为复杂度是N*N吧
回复

使用道具 举报

🔗
mint0715 2015-9-13 16:17:37 | 只看该作者
全局:
zxy_snow 发表于 2015-9-13 14:37
就是复杂度很高,是n*m,m是不同值的个数,姑且认为复杂度是N*N吧

这个做法等价于,每次把所有字符按频率排序,取出其中频率最高的d个,从高到低接在result后面。
假如每个位置可能的字符只有常数种,那么这个解法是O(n)。
回复

使用道具 举报

全局:
gp89757 发表于 2015-9-12 00:03
应该是只要最高频的可以满足 就有解 否则无解 最高频的是否满足取决于 (k-1)*minDistance < size of list

赞!但是有个小问题,算的时候是不是要考虑最高频是否唯一呢,假设最高频出现次数为k,有m个字母的最高频都是k,那么是否应该是(k-1)*minDis+(m-1)<size of list呢?
举个栗子就是aaabbbc要求minDis=3,aaa能放但是bbb就不行了
回复

使用道具 举报

🔗
gp89757 2015-9-14 09:52:46 | 只看该作者
全局:
夜行码农耗子 发表于 2015-9-14 02:22
赞!但是有个小问题,算的时候是不是要考虑最高频是否唯一呢,假设最高频出现次数为k,有m个字母的最高频 ...

你是对的
现在就是感觉如何输出valid的比较困难
考虑aaaabbbcc d=2 答案应该是 bababacac
回复

使用道具 举报

🔗
say543 2015-9-14 12:07:56 | 只看该作者
全局:
edna 发表于 2015-9-13 11:03
第一个例子是错的啊,如果是aaa, bb, cc然后间距是3,那么abcabca是合法的,但是你这个返回了个fail?

你的对的我的有bug...看看有没有人能想出更好的solution...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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