由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 如何将若干已升序排序好的数组合并在一起,并仍然是升序?
相关主题
[合集] 一个已经排序好的数组,就是一个堆heap吗?请教个排序的题目
STL里的priority_queue到底有啥用?一个算法问题
为什么不能成功排序An interview question. Thanks.
问一个leetcode的排序问题两个关于matrix的问题请教
新手学JAVA,遇到一个难题,有大侠愿意帮忙吗?弱弱的问问常出现的让俺糊涂的关于顺序的表述(有包子送)!!(转载)
a simple question何谓 heap array?
[合集] 问2个微软电话面试题目请问heap sort 数组时数组用preorder顺序存储怎么实现?
[合集] 请问一下题目的解决答案stack/heap corruption
相关话题的讨论汇总
话题: heap话题: element话题: array话题: 数组话题: smallest
进入Programming版参与讨论
1 (共1页)
n****n
发帖数: 101
1
请问,有若干个(比如3个)已经按升序排序好了的数组(数组长度可以一样,但也可
能不一样),那么现如何用最简洁、快速方法,将这3个数组合并到一起,仍然按升序?
注意,数组之间可能有想等的数据。
以前学过一个合并排序,但忘记如何操作了。
s***e
发帖数: 793
2
u can use heap if you have a mediate number of array. for 3, just write a
merge is ok.

序?

【在 n****n 的大作中提到】
: 请问,有若干个(比如3个)已经按升序排序好了的数组(数组长度可以一样,但也可
: 能不一样),那么现如何用最简洁、快速方法,将这3个数组合并到一起,仍然按升序?
: 注意,数组之间可能有想等的数据。
: 以前学过一个合并排序,但忘记如何操作了。

n****n
发帖数: 101
3
每个数组都有上千数据,我是用heap进行归并,但是,考虑到各个数组都已经是升序排
好了的,那么能否利用这个特点,进一步减小归并的时间、提高效率呢?
s***e
发帖数: 793
4
可以呀,
assume u have m sorted arrays with n total elements.
1: make a heap of size(m), and first put all the first of the m array in it.
2: then remove the smallest from the heap,and u need to know where the
smallest come from. so the heap element need to be a pair of value and array
index. Then add the next element in the sorted array of the removed element
if there is one.
doing step 2 until the heap is empty.
the key is that for sorted arrays, u only need to compare the smallest
element of all

【在 n****n 的大作中提到】
: 每个数组都有上千数据,我是用heap进行归并,但是,考虑到各个数组都已经是升序排
: 好了的,那么能否利用这个特点,进一步减小归并的时间、提高效率呢?

1 (共1页)
进入Programming版参与讨论
相关主题
stack/heap corruption新手学JAVA,遇到一个难题,有大侠愿意帮忙吗?
linux 下从c++动态内存操作问题,heap size不够还是别的?a simple question
一个查找算法题[合集] 问2个微软电话面试题目
问题请教[合集] 请问一下题目的解决答案
[合集] 一个已经排序好的数组,就是一个堆heap吗?请教个排序的题目
STL里的priority_queue到底有啥用?一个算法问题
为什么不能成功排序An interview question. Thanks.
问一个leetcode的排序问题两个关于matrix的问题请教
相关话题的讨论汇总
话题: heap话题: element话题: array话题: 数组话题: smallest