动态规划法——凸多边形最优三角划分

 

 

在这个算法中我们发现,其实可以用完全二叉树的形式来表示分割的方法,每个出度为2的结点都代表一个被划分的三角形,而其左右孩子即为划分的边。比如图中的红色三角形,左孩子A2代表结点(V1,V2),右孩子A3代表(V2,V3),V123构成一个三角形。青色三角形,左孩子A1是(V0,V1),右孩子没有编号,代表红色三角形中的剩余边(V1,V3)。 

 再看上图b的图形,假如要在这个图形中得到最优子结构,即权值和最小,那么如果把这个n边形分成两个子多边形+一个三角形,那么这两个子多边形各自所划分的结构也应当是最优子结构,因为整体最优那么部分一定也是最优,否则如果部分有更优结构,整体就不会是最优结构。在这之中我们运用动态规划,不断地细分直到每个子结构不再可分割。

 t[i][k]代表Vi-1~Vk的图形,t[k+1][j]代表Vk~Vj的图形,w(Vi-1VkVj)代表它们分出的三角形,三者之和正好为我们所求的划分权值之和,遍历所有分割方式取其中最小值即为最优值。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值