CLRS在讲贪心算法的时候,提到了贪心算法的理论基础是一种叫做拟阵的结构,凡是符合该结构的模型均可采用贪心算法。当然,它也提到该理论并不能完全覆盖贪心所能使用的全部范围 -- 例如活动选择和huffman编码就不能应用该理论。这个只是CLRS上讲的,具体为什么不能使用,需要思考一下。
活动选择问题不是拟阵。集合A是独立的当且仅当集合中所有的活动室相互兼容的,则A必然具有遗传性。
但是这种独立性的集合却不具有交换性质,例如|A|=2,|B|=3,具体如下:
A: |_____| |___________|
B: |_____| |___| |______|
则这种情况下,B-A任何一个元素{X}UA都不是独立的 -- 不是所有元素都兼容。
拟阵由线性代数矩阵中的向量无关性扩展而来,一个向量组X={X1,X2