校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 数据结构 > 归并排序
题目

假设你只有100MB的内存,需要对1GB的数据进行排序,最合适的算法是()

A.归并排序

B.插入排序

C.冒泡排序

D.快速排序

解答

正确答案是 A

首先内存只有100Mb,而数据却有1Gb,所以肯定没法一次性放到内存去排序,只能用外部排序,而外排序通常是使用多路归并排序,即将原文件分解成多个能够一次性装入内存的部分(如这里的100Mb),分别把每一部分调入内存完成排序(根据情况选取适合的内排算法),然后对已经排序的子文件进行多路归并排序(胜者树或败者树)。

C 5条回复 评论
芝麻酱

没看这篇帖子之前完全不懂该咋答

发表于 2022-06-26 22:00:00
0 0
公积金

起来更新了,老铁

发表于 2021-09-10 14:05:00
0 0
青辰

请问 一下,我本科就是软件工程(软件测试方向),以后也想成为软件测试工程师,目前大三即将结束,我之前是准备考研 ,也只是知道考研没有考虑具体什么方向之类的。因为软件测试是专业课 大三下才开课,我现在发现考研的学校 基本没有 软件测试方向的,都是比较热门的大数据、人工智能等研究方向。 所以 想成为软件测试工程师 是在大四时好好学习技术 然后本来毕业找工作?还是 应该考研究生(只是 我发现研究生没有研究软件测试的,也可能我没关注到) ?

发表于 2021-09-08 16:50:01
0 0
毛大军

只有100MB的内存,需要对1GB的数据进行排序,此时应该使用外部排序,而外部排序中经常使用的是归并排序。

发表于 2018-10-13 10:25:55
0 0
雨声敲敲

插入,冒泡,选择三个都需要把所有的数据一次性加入到内存中,才能进行。而并归排序可以完成。

发表于 2018-10-13 10:25:26
0 0