由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 一个面题
相关主题
这道题太神奇了,求排序算法,并且要求时间复杂度为O(n),空间复杂度O(1),讨论一题,去除有序数组的重复元素
求Youtube店面经验 顺便求bless:)一个查找算法题
想成为嵌入式程序员应知道的0x10个基本问题 zzBloomberg FSD电面面经
copy link with random additional pointers湾区SNS公司面经
How can one determine whether a singly linked list has a cycle?再探顶风作案题
A家电面题荷兰国旗问题的扩展
贡献点g家电面题问一道算法题(zz)
how to solve this google interview question请教一个函数默认返回值的问题,纠结很久了
相关话题的讨论汇总
话题: 最小话题: 数组话题: 面题话题: 单词话题: 指向
进入JobHunting版参与讨论
1 (共1页)
i***h
发帖数: 12655
1
一个文本文件, 另外给n个搜索单词
要求找出最小的包含所有搜索单词的段落
m**a
发帖数: 139
2
给每一个单词建一个数组记录在文件出现的所有位置。比如第5个字符开始就记录5.
这样有:
“aba”:3,8,20
“cds": 1,12,56
....
数组都是递增的。
然后问题就变成了: 在每个数组中找一个数字,使得这些数字中最小的和最大的距离
最小。复杂度是O(n);
i***h
发帖数: 12655
3
这个O(n)你怎么做的?

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

m**a
发帖数: 139
4
这个n是单词数,扫描一遍文件是O(n).
这是哪个公司的题?
m**a
发帖数: 139
5
扫描一遍数组应该也是线性的复杂度。
i***h
发帖数: 12655
6
G

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

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

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

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

m**a
发帖数: 139
10
要写的话好像是很麻烦。 这个是onsite时被问的吗?
相关主题
A家电面题讨论一题,去除有序数组的重复元素
贡献点g家电面题一个查找算法题
how to solve this google interview questionBloomberg FSD电面面经
进入JobHunting版参与讨论
l*****a
发帖数: 14598
11
结束条件不对
应该是某次最小的移到了数组末

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

i***h
发帖数: 12655
12
N年以前的滑铁卢

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

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

b******b
发帖数: 300
14
还是不太理解,牛人能给再解释一下不

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

p*****2
发帖数: 21240
15

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

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

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

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

h********w
发帖数: 221
17
这题没读明白,啥叫“最小的包含所有搜索单词的段落”,完整1个段落同时size最小
1 (共1页)
进入JobHunting版参与讨论
相关主题
请教一个函数默认返回值的问题,纠结很久了How can one determine whether a singly linked list has a cycle?
数组下标是下一跳的那道题A家电面题
被基础题搞挂了贡献点g家电面题
A家杯具,面经how to solve this google interview question
这道题太神奇了,求排序算法,并且要求时间复杂度为O(n),空间复杂度O(1),讨论一题,去除有序数组的重复元素
求Youtube店面经验 顺便求bless:)一个查找算法题
想成为嵌入式程序员应知道的0x10个基本问题 zzBloomberg FSD电面面经
copy link with random additional pointers湾区SNS公司面经
相关话题的讨论汇总
话题: 最小话题: 数组话题: 面题话题: 单词话题: 指向