算法&设计模式

引子 我跟媳妇曾经就面向对象设计这个话题做过有趣的探讨。当我把它们发表在社区之后,得到了一些很不错的反馈,也大大鼓舞了我。所以,我很高兴能把我们后面的一次谈话继续分享出来,那是关于面向对象的设计模式的,大家往下看吧。 什么是设计模式 丈 …

为什么要将看似简单的中序表达式转换为复杂的逆波兰式?原因就在于这个简单是相对人类的思维结构来说的,对计算机而言中序表达式是非常复杂的结构。相对的,逆波兰式在计算机看来却是比较简单易懂的结构。因为计算机普遍采用的内存结构是栈式结构,它执行 …

每个阶段的状态的最优值只和前面的阶段有关,和后面的阶段无关。如果将各个阶段的状态用有向图表示,那么无后效应就是要求有向图中无回路。无后效应是划分阶段的依据,只有当有向图无回路的时候才能根据有向图的拓扑排序来划分阶段。

动态规划——最优化原理与无后效性. 它是这样一种性质:某阶段的状态一旦确定,则此后过程的演变不再受此前各种状态及决策的影响,简单的说,就是“未来与过去无关”,当前的状态是此前历史的一个完整总结,此前的历史只能通过当前的状态去影响过程未来的演 …