小编Gir*_*ish的帖子

从2个不同数组中找出第2,第3和第4最高数之和的算法

我有2个非常大的整数数组,如a []和b [].
我想计算[]和b []中第2,第3和第4最高数的总和.即两个阵列中的第2,第3和第4最高数字......这只是3个数字的总和.请为此问题建议一个好的算法.

考虑到算法的时间复杂度,请支持您的答案.

注意:编程语言不是问题.你可以假设C.

以下是我为此问题开发的
算法:
1.考虑数组a []和b [].使用最大堆排序对[]和b []进行排序.
2.这两个数组现在都以数组中的最大元素作为根节点进行排序.比较[]和b []的根节点,无论哪个更大,都从数组中删除该数字.
3.重新定义具有max元素的数组.
4.现在在变量say sum中添加[]和b []的根节点.
5.重新合并[]和b [].
6.比较a []和b []的根节点,无论哪个更大,都将该数字加到sum.
7.打印varibale总和.

arrays algorithm data-structures

-2
推荐指数
1
解决办法
567
查看次数

标签 统计

algorithm ×1

arrays ×1

data-structures ×1