目录
2.7.3电路布线问题(Circuit Wiring Problem)
2.7.3.1问题
2.7.3.2确定动态规则(DP、状态转移方程)、初始值
(1)直接相关状态
(2)当前状态值的确定
(3)动态规则(DP、状态转移方程)
(4)初始值
2.7.3.3动态规划算法代码实现
(1)完整代码
(2)程序速度优化
(3)利用最长递增子序列求解电路布线问题
2.7.3电路布线问题(Circuit Wiring Problem)
2.7.3.1问题
电路布线(Circuit Wiring),在一块电路板的上、下两端分别有n个接线柱,根据电路设计,给定与上端接线柱对应的下端接线柱,要求用导线将上端接线柱与对应的下端接线柱连接起来,在这些连线中,哪些连线安排在电路板第一层上,使得该层上有尽可能多的连线且不相交。
电路板通常有单层、双层、多层等不同的层数,不同层数的电路板适用于不同复杂度和性能要求的电路设计。多层电路板至少有三层导电层,其中两层在外表面,而剩下的一层被合成在绝缘板内。本题要求把最多且不相交连线安排在电路板第一层,也即求电路板第一层最多且不相交连续的个数。也就是讲,上端接线柱与下端接线柱的连线已经给定,在这种连线中选择最多个不相交连线布线到电路板的第一层。对于多层电路板,