由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 如何处理几个文件的合并排序问题
相关主题
贡献两个Amazon的电话面试题有A[i]
一个实际的排序问题find median for k sorted arrays
一道google题Extension problem of finding intersection of two sorted array
合并two big sorted files问个微软面试题
刚和Amazon电话面试完哪里有讲k-way merge的?
求Twitter onsite 经验 (分享些它家的题目)external sorting的一个问题
Google电话面试题目有没有这样的题型
问个面试题刷题刷到没自信了
相关话题的讨论汇总
话题: 文件话题: sort话题: 排序话题: external话题: 排好
进入JobHunting版参与讨论
1 (共1页)
w******1
发帖数: 520
1
如何处理几个文件的合并排序问题
几个文件都很大, 每个文件都是一行行排好序的字符串序列组成的,
如果把这个几个文件合成一个大文件, 也必须是一行行排好序的, 怎么做比较快呢?
w******1
发帖数: 520
2
我的想法是因为每个文件都是排好序的,
那么我是把每个文件存到ARRAY,
从头开始, 从每个ARRAY 的第一个开始比较。
被选中的最小值的行, 写入新的文件, 指针下行。
但是, 因为文件中存的是字符串, 而不是数据, 这个比较起来, 就很慢了。
g*******y
发帖数: 1930
3
google yixia external sort
w******1
发帖数: 520
4
谢谢楼上的。
我用 external sort
结果被说是不SMART的一个方法。 拒了。
因为这是大文件系统。
g*******y
发帖数: 1930
5
then what's smarter way?
external sort cost is already minimal (in terms of I/O disk cost).
maybe you didn't describe clearly?

【在 w******1 的大作中提到】
: 谢谢楼上的。
: 我用 external sort
: 结果被说是不SMART的一个方法。 拒了。
: 因为这是大文件系统。

w******1
发帖数: 520
6
他说这个是可以的,能用。 但是不够SMART。不是他们想要的。
所以不考虑, MOVE ON.
这个输入的文件是几百GB的几个大文件。 已经按照时间排好序的, 要合成一个大的排
序文件。
g*******y
发帖数: 1930
7
那你把题目说清楚看看有没有其他的方法,
什么叫做一行行排好序的字符串,到底是对字符串排序还是按时间排序?
一行是一个record with 2个field,一个是char array,一个是time stamp?
sort的方法就那么些,他的方法能smart到哪儿去?

【在 w******1 的大作中提到】
: 他说这个是可以的,能用。 但是不够SMART。不是他们想要的。
: 所以不考虑, MOVE ON.
: 这个输入的文件是几百GB的几个大文件。 已经按照时间排好序的, 要合成一个大的排
: 序文件。

H*M
发帖数: 1268
8
小尾羊TX,你也申请作版主吧

【在 g*******y 的大作中提到】
: 那你把题目说清楚看看有没有其他的方法,
: 什么叫做一行行排好序的字符串,到底是对字符串排序还是按时间排序?
: 一行是一个record with 2个field,一个是char array,一个是time stamp?
: sort的方法就那么些,他的方法能smart到哪儿去?

g*******y
发帖数: 1930
9
我这阵子太忙了没有时间啊

【在 H*M 的大作中提到】
: 小尾羊TX,你也申请作版主吧
H*M
发帖数: 1268
10
这周结束就不忙了把

【在 g*******y 的大作中提到】
: 我这阵子太忙了没有时间啊
相关主题
求Twitter onsite 经验 (分享些它家的题目)有A[i]
Google电话面试题目find median for k sorted arrays
问个面试题Extension problem of finding intersection of two sorted array
进入JobHunting版参与讨论
w******1
发帖数: 520
11
是对合并后的文件内容排序。
比如两个输入文件都是这种结构
1997 qwqqwqw
1999 jjjjj
2008 dfdf dfdf
2009 wewe
2010 eswd

【在 g*******y 的大作中提到】
: 那你把题目说清楚看看有没有其他的方法,
: 什么叫做一行行排好序的字符串,到底是对字符串排序还是按时间排序?
: 一行是一个record with 2个field,一个是char array,一个是time stamp?
: sort的方法就那么些,他的方法能smart到哪儿去?

s*******n
发帖数: 452
12
再给个输入文件,和输出文件,到底是按1997还是qwqqwqw 排序,
还是“1997 qwqqwqw”作为一个整体排序?

【在 w******1 的大作中提到】
: 是对合并后的文件内容排序。
: 比如两个输入文件都是这种结构
: 1997 qwqqwqw
: 1999 jjjjj
: 2008 dfdf dfdf
: 2009 wewe
: 2010 eswd

w******1
发帖数: 520
13
“1997 qwqqwqw”作为一个整体排序

【在 s*******n 的大作中提到】
: 再给个输入文件,和输出文件,到底是按1997还是qwqqwqw 排序,
: 还是“1997 qwqqwqw”作为一个整体排序?

s*******n
发帖数: 452
14
最多就是用个heap maintain每个文件最小的数,基本就是这样了吧?

【在 w******1 的大作中提到】
: 我的想法是因为每个文件都是排好序的,
: 那么我是把每个文件存到ARRAY,
: 从头开始, 从每个ARRAY 的第一个开始比较。
: 被选中的最小值的行, 写入新的文件, 指针下行。
: 但是, 因为文件中存的是字符串, 而不是数据, 这个比较起来, 就很慢了。

f***n
发帖数: 117
15
是算法题还是实际工程问题?
如果是实际工程问题,还是并行做吧,读出时间,记录offset,拿时间去排序,同时拍
offset和文件#,然后并行写道大文件里去。
如果是算法问题,只有一个cpu和几G内存的话,还能如何。。无非就是每次把数据读一
部分到内存里排序然后写道文件里,然后继续读剩下的。。。
他们所谓的smart方法是啥?

【在 w******1 的大作中提到】
: 如何处理几个文件的合并排序问题
: 几个文件都很大, 每个文件都是一行行排好序的字符串序列组成的,
: 如果把这个几个文件合成一个大文件, 也必须是一行行排好序的, 怎么做比较快呢?

w******1
发帖数: 520
16
是实际用到的, 他们没告诉我。
w******1
发帖数: 520
17
我开始也许这样想的, 但是, 输入的文件如果多了的话, 如果是N 个文件。
那么,这个复杂度就上来了。

【在 s*******n 的大作中提到】
: 最多就是用个heap maintain每个文件最小的数,基本就是这样了吧?
c***z
发帖数: 6348
18
Under unix?
cat + sort

【在 w******1 的大作中提到】
: 如何处理几个文件的合并排序问题
: 几个文件都很大, 每个文件都是一行行排好序的字符串序列组成的,
: 如果把这个几个文件合成一个大文件, 也必须是一行行排好序的, 怎么做比较快呢?

g*******y
发帖数: 1930
19
输入文件多了正好是external sort的用武之地啊,总的I/O cost = 2 × log_n(N), N
是文件
个数, n是内存的大小/page大小
除了这个,如果时间的分布比较的uniform,可以按时间划分bucket,然后对每个
bucket进行sort

【在 w******1 的大作中提到】
: 我开始也许这样想的, 但是, 输入的文件如果多了的话, 如果是N 个文件。
: 那么,这个复杂度就上来了。

w******1
发帖数: 520
20
不准用缺省的unix SORT 方法。
我觉得external sort已经够好了。 不知道他们为什么不满意。
H*M
发帖数: 1268
21
也不是不满意,就是想push u to the limit and watch you
-A3

【在 w******1 的大作中提到】
: 不准用缺省的unix SORT 方法。
: 我觉得external sort已经够好了。 不知道他们为什么不满意。

1 (共1页)
进入JobHunting版参与讨论
相关主题
刷题刷到没自信了刚和Amazon电话面试完
a[i] + b[j] = c[k] 的题有靠谱的答案不?求Twitter onsite 经验 (分享些它家的题目)
find union for 2 arrays不准用Set怎么做Google电话面试题目
优步面试,哎。。。问个面试题
贡献两个Amazon的电话面试题有A[i]
一个实际的排序问题find median for k sorted arrays
一道google题Extension problem of finding intersection of two sorted array
合并two big sorted files问个微软面试题
相关话题的讨论汇总
话题: 文件话题: sort话题: 排序话题: external话题: 排好