由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - re: 面试归来,上面经回馈各位战友
相关主题
问一个merge k sorted array的问题哪里有讲k-way merge的?
一个特别的inplace merge two sorted arrays问一下sorting
几种linked List (array) merge 的复杂度(附个人体会)请教一下external sorting的问题
一个小公司面经刷题刷到没自信了
问一个amazon的数组排序题求教 合并两数组 并排除重复
question about big data哪位大写给说说 何时用 merge sort, 何时用 quick sort, 何时 heap sort
LinkIn面经求Twitter onsite 经验 (分享些它家的题目)
求一下这题解法。BB NON CS onsite面经
相关话题的讨论汇总
话题: nlgn话题: ko话题: array话题: sorted话题: 复杂度
进入JobHunting版参与讨论
1 (共1页)
k*j
发帖数: 153
1
翻出了这个老题,大家来讨论一下。下面是我的答案,不知道对不对,望指点。
http://www.mitbbs.com/article_t1/JobHunting/31848109_0_1.html
1. 两个sorted array, 如果merge成一个array。
O(m+n)
2. 如果这两个array没有sort呢?并分析复杂度。
O(nlgn)+O(n) if(m>n)
3. 如果有K个没有sorted的array怎么办呢?
kO(nlgn)+kO(n)
4. 如果当前机器有K个cpu, 怎么处理问题3呢?复杂度分析。
O(nlgn)+kO(n)
k****n
发帖数: 369
2

wrong, can unsorted array merging faster than sorted ones?
I see, I guess you mean kO(nlgn)+kO(n), but actually should be kO(nlgn)+kn(
lgk)
sort k arrays individually, O(nlgn)
divide & conquer, 2n 1st level, 4n 2nd level, ... kn at root,
lgk levels in total O(kn)

【在 k*j 的大作中提到】
: 翻出了这个老题,大家来讨论一下。下面是我的答案,不知道对不对,望指点。
: http://www.mitbbs.com/article_t1/JobHunting/31848109_0_1.html
: 1. 两个sorted array, 如果merge成一个array。
: O(m+n)
: 2. 如果这两个array没有sort呢?并分析复杂度。
: O(nlgn)+O(n) if(m>n)
: 3. 如果有K个没有sorted的array怎么办呢?
: kO(nlgn)+kO(n)
: 4. 如果当前机器有K个cpu, 怎么处理问题3呢?复杂度分析。
: O(nlgn)+kO(n)

k*j
发帖数: 153
3
对。不好意思,我那是笔误,O(nlgn)都错写成了O(lgn)
谢谢。我才意识到merge k个array需要一个heap(size k)来找当前最小值,所以每一步都需要lg(k)时间。总共是nk个元
素,nkO(lgk)

【在 k****n 的大作中提到】
:
: wrong, can unsorted array merging faster than sorted ones?
: I see, I guess you mean kO(nlgn)+kO(n), but actually should be kO(nlgn)+kn(
: lgk)
: sort k arrays individually, O(nlgn)
: divide & conquer, 2n 1st level, 4n 2nd level, ... kn at root,
: lgk levels in total O(kn)

y******n
发帖数: 47
4

这是怎么来的? 能解释以下么?

【在 k*j 的大作中提到】
: 对。不好意思,我那是笔误,O(nlgn)都错写成了O(lgn)
: 谢谢。我才意识到merge k个array需要一个heap(size k)来找当前最小值,所以每一步都需要lg(k)时间。总共是nk个元
: 素,nkO(lgk)

m****t
发帖数: 555
5

这个感觉不对。设想m=1000000, n=10, 则复杂度绝对不会是O(nlgn)+O(n)

【在 k*j 的大作中提到】
: 对。不好意思,我那是笔误,O(nlgn)都错写成了O(lgn)
: 谢谢。我才意识到merge k个array需要一个heap(size k)来找当前最小值,所以每一步都需要lg(k)时间。总共是nk个元
: 素,nkO(lgk)

1 (共1页)
进入JobHunting版参与讨论
相关主题
BB NON CS onsite面经问一个amazon的数组排序题
求代码,median of K sorted listquestion about big data
一点面经(software developer)LinkIn面经
T家一面求一下这题解法。
问一个merge k sorted array的问题哪里有讲k-way merge的?
一个特别的inplace merge two sorted arrays问一下sorting
几种linked List (array) merge 的复杂度(附个人体会)请教一下external sorting的问题
一个小公司面经刷题刷到没自信了
相关话题的讨论汇总
话题: nlgn话题: ko话题: array话题: sorted话题: 复杂度