avatar
i*h
1
一个文本文件, 另外给n个搜索单词
要求找出最小的包含所有搜索单词的段落
avatar
z*c
2
avatar
m*a
3
给每一个单词建一个数组记录在文件出现的所有位置。比如第5个字符开始就记录5.
这样有:
“aba”:3,8,20
“cds": 1,12,56
....
数组都是递增的。
然后问题就变成了: 在每个数组中找一个数字,使得这些数字中最小的和最大的距离
最小。复杂度是O(n);
avatar
b*1
4
弱弱问 : 纹凤姐身上,也能漂亮吗?
avatar
i*h
5
这个O(n)你怎么做的?

【在 m**a 的大作中提到】
: 给每一个单词建一个数组记录在文件出现的所有位置。比如第5个字符开始就记录5.
: 这样有:
: “aba”:3,8,20
: “cds": 1,12,56
: ....
: 数组都是递增的。
: 然后问题就变成了: 在每个数组中找一个数字,使得这些数字中最小的和最大的距离
: 最小。复杂度是O(n);

avatar
I*t
6
等老了皮肤松弛后再看

【在 z**c 的大作中提到】

avatar
m*a
7
这个n是单词数,扫描一遍文件是O(n).
这是哪个公司的题?
avatar
o*c
8
...
看成了漂亮的taco...

【在 z**c 的大作中提到】

avatar
m*a
9
扫描一遍数组应该也是线性的复杂度。
avatar
i*h
10
G

【在 m**a 的大作中提到】
: 这个n是单词数,扫描一遍文件是O(n).
: 这是哪个公司的题?

avatar
i*h
11
"在每个数组中找一个数字,使得这些数字中最小的和最大的距离最小"
怎么弄?

【在 m**a 的大作中提到】
: 扫描一遍数组应该也是线性的复杂度。
avatar
m*a
12
假设有n个数组。 每个数组设一个pointer 指向开始。计算n个书中的最小距离(最大
值减最小值),如果比global的小,更新global。向后指向n个数中最小的那个的
pointer。重复知道所有pointer都指向数组末。
avatar
i*h
13
好象是这样
code很麻烦啊

【在 m**a 的大作中提到】
: 假设有n个数组。 每个数组设一个pointer 指向开始。计算n个书中的最小距离(最大
: 值减最小值),如果比global的小,更新global。向后指向n个数中最小的那个的
: pointer。重复知道所有pointer都指向数组末。

avatar
m*a
14
要写的话好像是很麻烦。 这个是onsite时被问的吗?
avatar
l*a
15
结束条件不对
应该是某次最小的移到了数组末

【在 m**a 的大作中提到】
: 假设有n个数组。 每个数组设一个pointer 指向开始。计算n个书中的最小距离(最大
: 值减最小值),如果比global的小,更新global。向后指向n个数中最小的那个的
: pointer。重复知道所有pointer都指向数组末。

avatar
i*h
16
N年以前的滑铁卢

【在 m**a 的大作中提到】
: 要写的话好像是很麻烦。 这个是onsite时被问的吗?
avatar
m*a
17
同意。那时候应该结束了,没有必要再找了。

【在 l*****a 的大作中提到】
: 结束条件不对
: 应该是某次最小的移到了数组末

avatar
b*b
18
还是不太理解,牛人能给再解释一下不

【在 m**a 的大作中提到】
: 假设有n个数组。 每个数组设一个pointer 指向开始。计算n个书中的最小距离(最大
: 值减最小值),如果比global的小,更新global。向后指向n个数中最小的那个的
: pointer。重复知道所有pointer都指向数组末。

avatar
p*2
19

向后指向n个数中最小的那个的
pointer。
判断这个还是O(N)吗?

【在 m**a 的大作中提到】
: 假设有n个数组。 每个数组设一个pointer 指向开始。计算n个书中的最小距离(最大
: 值减最小值),如果比global的小,更新global。向后指向n个数中最小的那个的
: pointer。重复知道所有pointer都指向数组末。

avatar
z*t
20
是的。指向当前的最小下标的指针向后移动之后,
需要遍历所有的指针才能找到新的最小下标。
如果整个文本的长度是n,目标单词有k个,
只能做到O(n)+O(k^2),优化后可实现O(n) + O(k*logk),
但做不到O(n)。
当然,由于通常情况下n >> k,
这个时候可以近似认为效率是O(n)。
不知道我的理解是不是正确的......

【在 p*****2 的大作中提到】
:
: 向后指向n个数中最小的那个的
: pointer。
: 判断这个还是O(N)吗?

avatar
h*w
21
这题没读明白,啥叫“最小的包含所有搜索单词的段落”,完整1个段落同时size最小
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。