算法第三章作业

1.对动态规划算法的理解:动态规划算法是非常常见的算法,经常用于求解最优问题的解,其基本思想是将待求解问题分解成若干个子问题。这跟分治法类似,但其计算量是较少的,求解的子问题保存,当之后遇到相同的子问题便不需要再计算一便,大大的减少了计算量,但其空间占据也相较其他算法多,对空间需求量不大的题目来说,动态规划算法是优秀的选择方案。

2.编程题1、2的递归方程:

1.for (int i = 1; i < n; i++) {
  
  for (int j = 0; j < i; j++)
  {
   if (a[j] < a[i]&& b[j]>b[i] - 1) {
    b[i] = b[j] + 1;
   }
  }
 }

2.if(m[j]+cost[j][i]<min) 
                    min=m[j]+cost[j][i];

3.结对编程情况:

两人在编程上都有相互促进,相互帮助

posted @ 2018-11-11 21:40  Psyche6  阅读(97)  评论(0编辑  收藏  举报