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

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

 
🔗
asdw3276 2014-6-18 00:40:43 | 只看该作者
全局:
【解题思路】
把字符转换为ASCII。创建bool 数组检验选中字符是否已经在bool数组里存在。(我的疑问是不允许用别的数据结构,那数组可以用?没有排序主要是因为要么原地排序破坏string,要么需要额外空间)
【时间复杂度】O(n)
【空间复杂度】O(1)
【gist link】https://gist.github.com/asdw3276/5b2abe1a0d6f23ca724b

感谢所有给我code review的小伙伴
回复

使用道具 举报

🔗
guchang 2014-6-18 02:44:33 | 只看该作者
全局:
【解题思路】
1. 如果字符是ASCII码,用256大小的int数组去储存字符出现的次数。若次数大于1,则说明有重复。
【时间复杂度】
1. O(n/2)
【空间复杂度】
1. O(256)
【gist link】
https://github.com/guchang/CC150/blob/master/CC1_1.java
回复

使用道具 举报

🔗
zZ-IT 2014-6-18 03:59:06 | 只看该作者
全局:
【解题思路】
贴上来的太晚了,太久不写java了,参考了一些前面大牛写的 ==!假设字符串是由asc ii编码,则asc ii一个有256个不同的字符。用一个 256的数组来判断同一个字符串里的字符是不是出现了两次,开始时初始化所有的位置上为false
如果 字符串为null 或者为空,那么返回 false
如果 字符串的某一位已经被置为 true,那么意味着已经出现了一次。如果再次遇到,就说明出现了重复,所以返回 false。
其他情况下 返回 true
【时间复杂度】
O(n)
【空间复杂度】
O(1)
【gist link】
https://gist.github.com/ZhuGuanyu/7e28fcfb14cf5675ff07
【测试数据】
string = null ;
string = "" ;
回复

使用道具 举报

🔗
rxTByjroA2h3 2014-6-18 05:39:42 | 只看该作者
全局:
本帖最后由 larry 于 2014-6-18 05:46 编辑
habina 发表于 2014-6-16 04:24
【解题思路】
  Create a boolean array with all initial value True
  Read one character at a time, ...

Nice idea!
回复

使用道具 举报

🔗
rxTByjroA2h3 2014-6-18 05:44:47 | 只看该作者
全局:
本帖最后由 larry 于 2014-6-18 05:47 编辑

【解题思路】 Heapsort
(When checking others' posts, I realize that creating a constant-size array is permitted. My first thought is we cannot use extra data structures, including arrays.....nah)
【时间复杂度】O(NlogN)
【空间复杂度】O(1)
【gist link】https://gist.github.com/larry-liu/e2cc893aa60b01545c21<-so sad....
回复

使用道具 举报

🔗
tonygxxx1212 2014-6-18 10:29:41 | 只看该作者
全局:
本帖最后由 tonygxxx1212 于 2014-6-18 10:46 编辑

【解题思路】: 看字符的类型决定算法,ASCII/Extended ASCII/Unicode/'a~z'/'A~Z'
【时间复杂度】: brute-force: O(N^2)______map to boolean array + bit manipulation: O(N)
【空间复杂度】: O(1)
【gist link】: https://gist.github.com/xun-gong/a6c437bd3bab09f8a817

btw: 基本上是自己思考,写一下,然后参考 http://hawstein.com/posts/ctci-solutions-contents 修改和学习的... 好像也没有办法review每个人的代码。督促作用还是很明显的
回复

使用道具 举报

🔗
3angFeng945 2014-6-18 10:40:46 | 只看该作者
全局:
MichaelYC 发表于 2014-6-17 11:58
gist 的地址不对啊。
麻烦楼上的兄弟贴一下浏览器地址栏的地址。
谢谢~

谢谢提醒,已经改了
回复

使用道具 举报

🔗
MichaelYC 2014-6-18 12:09:07 | 只看该作者
全局:
3angFeng945 发表于 2014-6-16 22:47
【解题思路】就是最直接的,一个一个比较
【时间复杂度】O(n^2)
【空间复杂度】O(1)

时间复杂度可以降低的:
用 Data Structure(hash set):变成 O(n)
不用:可以为 O(NlgN)

推荐你参考一下我楼下的或者我的。
特别是我楼下的,会有帮助的。
回复

使用道具 举报

🔗
smzfeng 2014-6-18 15:14:46 | 只看该作者
全局:
【解题思路】only tried ASCII characters
【时间复杂度】O(N)
【空间复杂度】O(N)
【gist link】https://gist.github.com/liubonan/edb3cb3b99526c77c84f
【test case】simple test cases
回复

使用道具 举报

🔗
smzfeng 2014-6-18 15:18:46 | 只看该作者
全局:
锦木千束 发表于 2014-6-16 10:39
【解题思路】好像和前面好几个人都一样,开一个256的bool数组每个代表对应的ascii是否出现过,出现一样的就 ...

space complexity should be O(N)
more comments in your code
回复

使用道具 举报

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

本版积分规则

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