大二上学期算法第二章上机实践

Posted lucasleeg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大二上学期算法第二章上机实践相关的知识,希望对你有一定的参考价值。

实践题目:两个有序序列的中位数
问题描述:已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列A0,A1,?,AN?1的中位数指A(N?1)/2的值,即?(N+1)/2?个数(A0为第1个数)。
算法描述:用变量i和f作为两个数组的下标,依次比较并将两个数组所有元素归并成一个数组,最后直接输出合成数组第?(N+1)/2?个数。因为两个数组都是非降序序列,时间复杂度只有O(n)。
                  另外,该题目忽略元素的重复,用二分法直接不断两个数组的中位数,最后得到两个中位数,较小的那个即为所求答案,二分法时间复杂度为O(log2n)。
心得体会:通过拓展形式的题目,有了对二分法的更加深入理解。在解题过程中,发现2个以上解决方法能给自己带来益处以及成就感。

以上是关于大二上学期算法第二章上机实践的主要内容,如果未能解决你的问题,请参考以下文章

算法第二章上机实践报告

算法第二章上机实践报告

算法第二章上机实践报告

实践算法第二章上机实践报告

算法第二章上机实践报告

算法第二章上机实践报告