学数据结构和算法的时候,最初认为解决一个问题,首先要确定算法,然后根据算法来设计合适的数据结构。算法的设计依赖于对问题的理解,对问题的关键突破点的准确把握,数据结构只不过是为了方便数据处理而设计的一个数据平台,数据平台如何做,那是任意的。
现在想来,有了新的理解。先举个例子:我们为了描述真实世界的对象,用矢量数据在三维信息空间进行描述,从而方便信息处理。那么,这个过程可以理解为将真实世界的数据模型(空间+能量+对象关系),变换到数字世界的矢量数据(数值+关系),从而方便我们处理某些方面的问题(算法)。后一个模型对前一个模型有一定的描述,但实际上是不能替代的,就像比喻总是与实际情况存在差别的。
真实世界可以被完整描述到数值世界中吗?matrix中的情况可能发生吗?目前,在工作中,我遇到了一些难题,究其原因还是数据模型的描述能力的问题,数据模型间的变换问题,在这些模型描述面前,算法变得次要了。一旦数据模型确定了,基本上就确定了基于此模型所能处理的问题范围,算法就因模型受到限制。希望通过哲学来构建较完美的数据模型......
本文探讨了数据模型与算法之间的关系,作者最初认为算法优先于数据结构,后来意识到数据模型对于解决问题的重要性。文章通过真实世界的例子说明了数据模型转换为数字世界模型的过程,并指出在某些情况下,数据模型比算法更为关键。

被折叠的 条评论
为什么被折叠?



