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

推特 OA 2019

🔗
fer23333333 2018-8-14 02:56:26 | 只看该作者
全局:
indiroia 发表于 2018-8-14 02:40
我也是用 map
然後取substring時是根據map key 的字串長度由小到大去找
中間三個test case實在想不到是 ...

我想的是会不会key是10010和1001000000 你就只取了前者 没用后者这样的?
回复

使用道具 举报

🔗
indiroia 2018-8-14 03:05:57 | 只看该作者
全局:
fer23333333 发表于 2018-8-14 02:56
我想的是会不会key是10010和1001000000 你就只取了前者 没用后者这样的?

可是根據題目敘述
In this encoding scheme, no code can be a prefix of another. For example, if the code for a is “01”, then the code for b cannot be “011”
所以10010跟1001000000不可能同時是key. 這不符合Huffman的定義
回复

使用道具 举报

🔗
fer23333333 2018-8-14 03:19:13 | 只看该作者
全局:
indiroia 发表于 2018-8-14 03:05
可是根據題目敘述
In this encoding scheme, no code can be a prefix of another. For example, if the ...

emmmm那我也不知道了,本来想用backtracking 看来也不是corner case 的原因
回复

使用道具 举报

🔗
tqzzj 2018-8-14 04:51:34 | 只看该作者
全局:
greedy 暴力解就可以过
回复

使用道具 举报

🔗
 楼主| leebigyu 2018-8-14 07:20:37 | 只看该作者
全局:
tqzzj 发表于 2018-8-14 04:51
greedy 暴力解就可以过

您好 可以麻煩您再說清楚一些如何用 greedy 嗎?
因為我現在用 map 存 parse 過後的 codes,然後再讀 encoded string, 找到符合就存到 stringbuilder,最後輸出的方法
感覺就滿像暴力解的
但還是不清楚哪裡出了問題
謝謝
回复

使用道具 举报

🔗
tqzzj 2018-8-14 11:23:40 | 只看该作者
全局:
leebigyu 发表于 2018-8-14 07:20
您好 可以麻煩您再說清楚一些如何用 greedy 嗎?
因為我現在用 map 存 parse 過後的 codes,然後再讀 en ...

huffman编码就是说前缀不可能一样。如果a 为01,b不可能为011,所以就每次decode的时候后面的点+1,直到在map里有这个编码为止。
回复

使用道具 举报

🔗
tqzzj 2018-8-14 11:23:47 | 只看该作者
全局:
leebigyu 发表于 2018-8-14 07:20
您好 可以麻煩您再說清楚一些如何用 greedy 嗎?
因為我現在用 map 存 parse 過後的 codes,然後再讀 en ...

huffman编码就是说前缀不可能一样。如果a 为01,b不可能为011,所以就每次decode的时候后面的点+1,直到在map里有这个编码为止。
回复

使用道具 举报

🔗
gongsidegou 2018-8-14 11:26:58 | 只看该作者
全局:
求解我的huffman和prime tree 后5个test都超时 = =
回复

使用道具 举报

🔗
 楼主| leebigyu 2018-8-14 11:59:20 | 只看该作者
全局:
tqzzj 发表于 2018-8-14 11:23
huffman编码就是说前缀不可能一样。如果a 为01,b不可能为011,所以就每次decode的时候后面的点+1,直到 ...

我其實就是這樣解..但不知道為什麼 3~7 的 test case 過不了 T^T
回复

使用道具 举报

🔗
tqzzj 2018-8-14 18:40:30 | 只看该作者
全局:
leebigyu 发表于 2018-8-14 11:59
我其實就是這樣解..但不知道為什麼 3~7 的 test case 過不了 T^T

好吧,我这样写的思路是可以全过的。可能你是有的小地方没有注意吧。具体再查查吧
回复

使用道具 举报

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

本版积分规则

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