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

[CareerCup] 【第三轮】6.16-6.22 CareerCup 1.1

 
🔗
whiteflower 2014-7-3 22:51:40 | 只看该作者
全局:
本帖最后由 whiteflower 于 2014-7-3 22:55 编辑

【解题思路】 put every character in a hash table, and determine whether there is a same character in it
【时间复杂度】O(n)
【空间复杂度】O(n)
【gist link】https://gist.github.com/JoshuaTang/ab96ff7fe5700f81f328
---------------OPTional,如果觉得test case比较好,欢迎写出来分享----------------------
【test case】
回复

使用道具 举报

🔗
pyemma 2014-7-5 14:54:25 | 只看该作者
全局:
【解题思路】Assuming the string is ASCII, we use a 256 boolean array to record whether each character has ever appeared
【时间复杂度】O(N)
【空间复杂度】O(1)
【gist link】https://gist.github.com/2ded9ef087b0f61317da.git
---------------OPTional,如果觉得test case比较好,欢迎写出来分享----------------------
【test case】

虽然这么做没有问题,但是在空间复杂度和时间复杂度的分析上感觉有些地方不太清楚。首先,既然假设了是ASCII码,那么必然只需要一个常数空间的数组,那么空间复杂度是O(1)应该没有太大异议,但是时间复杂度呢?在我上面的代码中,我们将整个string扫了一遍,理论上是O(N),但是根据抽屉原理,string长度一旦超过256,必然有两个字符重复,我们完全可以直接返回FALSE,所以我认为实际的amortized time complexity应该是O(1),希望有大牛来解答。
回复

使用道具 举报

🔗
donnice 2014-7-6 06:31:04 | 只看该作者
全局:
【解题思路】受大家启发,建立一个bool[256]的数组
【时间复杂度】O(N)
【空间复杂度】O(1)
【gist link】
https://github.com/donnice/donnice/blob/master/Q1_1
回复

使用道具 举报

🔗
kanero 2014-7-6 16:26:12 | 只看该作者
全局:
【解题思路】整型保存标志, 位运算
【时间复杂度】 O(n)
【空间复杂度】 O(1)
【gist link】
python解法 https://gist.github.com/nerowong/1f08eed70776b859d207#file-cc150_1_1-py
回复

使用道具 举报

全局:
本帖最后由 圆梦梦剧场 于 2014-7-8 22:41 编辑

【解题思路】
对于Extended ASCII,使用长度为256的boolean数组来保存某个字符是否已经出现。

【时间复杂度】
O(N)


【空间复杂度】
O(1)

【gist link】
https://gist.github.com/happyWinner/9f0298c454fcc1f194a6

【test case】
输入为NULL或者空字符串的时候都返回True
回复

使用道具 举报

🔗
wasabi_akira 2014-7-9 02:00:48 | 只看该作者
全局:
【解题思路】
1、利用256位的boolean数组来看是否字符已经出现过。
2、利用bitset来处理,剩下的思路基本和上题一样。

【时间复杂度】
O(N)


【空间复杂度】
O(1)

【gist link】
https://gist.github.com/Free99/da1dfbf89b2aa9159dcf

【test case】
随便敲的0.0
回复

使用道具 举报

🔗
水逼一枚 2014-8-22 11:01:10 | 只看该作者
全局:
我有个疑问就是,似乎大家都没有做input处理是吗?就是用scanner来读取用户输入在检测unique character,而都是用的hard-code test吗?
回复

使用道具 举报

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

本版积分规则

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