avatar
c*t
2
【 以下文字转载自 Parenting 讨论区 】
发信人: cookiesweet (apple), 信区: Parenting
标 题: 给中学生的手表
发信站: BBS 未名空间站 (Wed Sep 10 02:24:57 2014, 美东)
想给国内朋友的儿子买个手表。上初中。至少要有日历,闹钟,秒表(短跑计时用),
指南针等功能。
去哪里买?最好是实体店,可以看到样子,也可当时买到。什么牌子的?样子好看些,
控制在100刀之内。
avatar
l*n
3
Given an array of strings, return all groups of strings that are anagrams.
Note: All inputs will be in lower-case.
本来还想偷懒,写个O(n2)的算法了事,结果直接被面试官叫停
后来被迫想O(n)算法,好在稀了糊涂地写出来了
我45分钟之内,就写了这一道题
看板上的其他兄弟,随便就是写两道题。 我估计不是挂掉了,就得再加面一轮。
avatar
r*6
4
me, I didn't get it either.
I bought 3 of them and didn't get any promotional card.
By the way, what is the CS number you called?
avatar
c*g
5
apple的watch,可是好像价格太贵了;反正美国我之前看表的时候,便宜的我看不上,
看得上的都尼玛4位数;不然回国买,或者买点别的?
avatar
p*g
6
请问你这个题最后的return的数据结构是什么, 是不是return 一个hashtable, key放
string(排过序的), value放一个arraylist放所有在这个组的string?
avatar
s*m
7
866-599-8606

【在 r*****6 的大作中提到】
: me, I didn't get it either.
: I bought 3 of them and didn't get any promotional card.
: By the way, what is the CS number you called?

avatar
a*7
8
amazon上casio有不少

【在 c*********t 的大作中提到】
: 【 以下文字转载自 Parenting 讨论区 】
: 发信人: cookiesweet (apple), 信区: Parenting
: 标 题: 给中学生的手表
: 发信站: BBS 未名空间站 (Wed Sep 10 02:24:57 2014, 美东)
: 想给国内朋友的儿子买个手表。上初中。至少要有日历,闹钟,秒表(短跑计时用),
: 指南针等功能。
: 去哪里买?最好是实体店,可以看到样子,也可当时买到。什么牌子的?样子好看些,
: 控制在100刀之内。

avatar
l*n
9
是一个bucket
{ { abcd, dcba}, {chip, ipch}, {ook}}
avatar
l*s
10
apple watch
avatar
m*3
11
是不是用把每个string sort,得到一个排过序的string作为key, 然后原来的string作
为value插入map,有什么要注意的地方么?

【在 l******n 的大作中提到】
: Given an array of strings, return all groups of strings that are anagrams.
: Note: All inputs will be in lower-case.
: 本来还想偷懒,写个O(n2)的算法了事,结果直接被面试官叫停
: 后来被迫想O(n)算法,好在稀了糊涂地写出来了
: 我45分钟之内,就写了这一道题
: 看板上的其他兄弟,随便就是写两道题。 我估计不是挂掉了,就得再加面一轮。

avatar
a*1
12
apple watchtFZd
avatar
l*n
13
"得到一个排过序的string作为key, 然后原来的string作为value插入map"
这样同一个key会有很多value
avatar
l*o
14
apple watch, $350
avatar
x*m
15
value is a vector

【在 l******n 的大作中提到】
: "得到一个排过序的string作为key, 然后原来的string作为value插入map"
: 这样同一个key会有很多value

avatar
s*k
16
正解
觉得贵就 Timex

【在 a******7 的大作中提到】
: amazon上casio有不少
avatar
x*n
17
sort每个string里的chars的方法,这个本事是nlogn的操作,n是string的平均长度。
如果是m个string要处理,那时间复杂度是mnlogn。这个是面试官希望的么?

【在 l******n 的大作中提到】
: Given an array of strings, return all groups of strings that are anagrams.
: Note: All inputs will be in lower-case.
: 本来还想偷懒,写个O(n2)的算法了事,结果直接被面试官叫停
: 后来被迫想O(n)算法,好在稀了糊涂地写出来了
: 我45分钟之内,就写了这一道题
: 看板上的其他兄弟,随便就是写两道题。 我估计不是挂掉了,就得再加面一轮。

avatar
r*3
18
这个是先给定两个string a1, string a2,先判断是否长度相等,如果相等用radix
sort, time 复杂度 O(n*k),
n 是a1 长度,k=26,假设只有26个小写字母得话。
然后以排好序的作为一个key,放到hashtable里, 这样应该是O(n)

【在 l******n 的大作中提到】
: Given an array of strings, return all groups of strings that are anagrams.
: Note: All inputs will be in lower-case.
: 本来还想偷懒,写个O(n2)的算法了事,结果直接被面试官叫停
: 后来被迫想O(n)算法,好在稀了糊涂地写出来了
: 我45分钟之内,就写了这一道题
: 看板上的其他兄弟,随便就是写两道题。 我估计不是挂掉了,就得再加面一轮。

avatar
r*d
19
好像可以不用string长度
思路
Step1 把每个string用radix 的思路转换一下。 例如babab可以转换成a2b3(a出现2次b
出现3次)
Step2 将所有string放到一个hush table里。key 是上步转换后的string.value是list
。如果有conflict 就插入list尾端
Step3 遍历一遍所有string 打印结果

【在 r********3 的大作中提到】
: 这个是先给定两个string a1, string a2,先判断是否长度相等,如果相等用radix
: sort, time 复杂度 O(n*k),
: n 是a1 长度,k=26,假设只有26个小写字母得话。
: 然后以排好序的作为一个key,放到hashtable里, 这样应该是O(n)

avatar
x*i
20
难道这不是 leetcode 100年前的原题吗? 咋突然领出来?
am i missing sth?
avatar
z*e
21
正解,就是原题啊,sort一下就好啦
avatar
x*u
22

为什么要先sort,然后再做hash?先检测长度,不同则不是。长度相同就直接挨个比较
两个string的字母,一个从前向后,一个从后向前,任何时候有不同就证明不是,中断
循环。循环正常完毕就证明是anagram。
还有应该可以把其中一个string反过来存储。然后把两个string做一个XOR。结果不是0
的就不是。

【在 r********3 的大作中提到】
: 这个是先给定两个string a1, string a2,先判断是否长度相等,如果相等用radix
: sort, time 复杂度 O(n*k),
: n 是a1 长度,k=26,假设只有26个小写字母得话。
: 然后以排好序的作为一个key,放到hashtable里, 这样应该是O(n)

avatar
l*s
23
anagram is in different logic of palindrome

【在 x****u 的大作中提到】
:
: 为什么要先sort,然后再做hash?先检测长度,不同则不是。长度相同就直接挨个比较
: 两个string的字母,一个从前向后,一个从后向前,任何时候有不同就证明不是,中断
: 循环。循环正常完毕就证明是anagram。
: 还有应该可以把其中一个string反过来存储。然后把两个string做一个XOR。结果不是0
: 的就不是。

avatar
x*u
24

啊。错成这样。脑子糊涂了。
不过,还是不用sort,假设字符是英文字母,就设两个个26单元的array。然后一个
string从前向后,另一个sting从后向前,见到一个字符就把对应的那个array单元加一
。最后然后比较两个array,每个单元的数字都一样的就是anagram/

【在 l******s 的大作中提到】
: anagram is in different logic of palindrome
avatar
s*x
25
直接sort,然后查找Map,找到了就把index存入map,
然后回头再把map内index array个数多于1个的打印出来即可。
O(n)
avatar
q*z
26
应该可以design一个hash,把所有的anagram map到一个值上,这样就是o(n).
比如把字符视为27进制的数,a为1,z为26,先sort再转换,这样的hash应该是所有的
anagram map到同一个值的
hash计算可以从a到z扫描26遍,逐个进位。复杂度o(k)k为字符串长度。
注意hash变量的最大值会限制能处理的字串最大长度。

【在 l******n 的大作中提到】
: Given an array of strings, return all groups of strings that are anagrams.
: Note: All inputs will be in lower-case.
: 本来还想偷懒,写个O(n2)的算法了事,结果直接被面试官叫停
: 后来被迫想O(n)算法,好在稀了糊涂地写出来了
: 我45分钟之内,就写了这一道题
: 看板上的其他兄弟,随便就是写两道题。 我估计不是挂掉了,就得再加面一轮。

avatar
J*o
27

同问, 面试官是不是不满意这种复杂度的?

【在 x*****n 的大作中提到】
: sort每个string里的chars的方法,这个本事是nlogn的操作,n是string的平均长度。
: 如果是m个string要处理,那时间复杂度是mnlogn。这个是面试官希望的么?

avatar
a*g
28
不能是o(n)吧?sort的复杂度是多少?

【在 s******x 的大作中提到】
: 直接sort,然后查找Map,找到了就把index存入map,
: 然后回头再把map内index array个数多于1个的打印出来即可。
: O(n)

avatar
j*3
29
我都没看懂这个题什么意思,和leetcode上有什么不同?
avatar
n*n
30
还有字符串本身长度。

【在 l******n 的大作中提到】
: Given an array of strings, return all groups of strings that are anagrams.
: Note: All inputs will be in lower-case.
: 本来还想偷懒,写个O(n2)的算法了事,结果直接被面试官叫停
: 后来被迫想O(n)算法,好在稀了糊涂地写出来了
: 我45分钟之内,就写了这一道题
: 看板上的其他兄弟,随便就是写两道题。 我估计不是挂掉了,就得再加面一轮。

avatar
s*x
31
pre-process不算复杂度。
查找的复杂度是O(n).

【在 a******g 的大作中提到】
: 不能是o(n)吧?sort的复杂度是多少?
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。