首页 > 编程语言 > 详细

算法分析-动态规划

时间:2016-10-09 06:58:58      阅读:157      评论:0      收藏:0      [点我收藏+]
 1 var p = [1, 5, 8, 9, 10, 17, 17, 20, 24, 30];
 2 
 3 var obj = Cut(p, 50);
 4 console.log(obj.m)
 5 function Cut(p, n) {
 6     var m = [];
 7     var s = [];
 8 
 9     for (var i = 1; i <= n; i++) {
10         m[i] = [];
11         s[i] = [];
12         for (var j = 1; j <= n; j++) {
13             m[i][j] = 0;
14             s[i][j] = 0;
15         }
16     }
17 
18 
19     for (var l = 0; l < n; l++) {
20 
21         for (var i = 1; i + l <= n; i++) {
22 
23             var j = i + l;
24 
25             m[i][j] = p[l] ? p[l] : 0;
26 
27             for (var k = i; k < j; k++) {
28 
29                 var temp = m[i][k] + m[k + 1][j];
30 
31                 if (temp > m[i][j]) {
32                     m[i][j] = temp;
33                     s[i][j] = k;
34                 }
35             }
36 
37         }
38     }
39     return {
40         m: m,
41         s: s
42     };
43 
44 }

 

算法分析-动态规划

原文:http://www.cnblogs.com/huenchao/p/5940696.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!