随笔分类 - 算法
摘要:一、寻找两个等长有序序列的中位数 1.1 问题描述 对于一个长度为n的有序序列(假设均为升序序列),a[0...n-1],处于中间位置的元素称为a的中位数,现要求两个等长有序序列合并的中位数。 1.2 求解思路 对于求两个有序序列a[],b[]的中位数,首先考虑到二路归并后求其中位数c[m](m=(
阅读全文
摘要:一、幂集问题 1.1 问题描述 对于给定的正整数n(n>=1),求1-n构成的集合的幂集(即由1-n的集合中所有自己构成的集合,包括全集和空集)。 1.2 求解思路与代码 1、直接穷举法:将1-n存放到数组a中,用b数组中1-n的元素来标记(0为不在当前集合,1为在当前集合),此时便可将问题转化为:
阅读全文
摘要:一、背包问题 1.1 问题描述 设有编号为1、2、......、n的n个物品,它们的重量分别为w1、w2、......、wn,价值分别为v1、v2、......、vn,其中wi和vi均为正数,有一个背包可以懈怠的最大重量不超过W。求解目标是在不超过背包附中的前提下使背包装入的总价值最大(即效益最大化
阅读全文