算法第五章作业

1.你对回溯算法的理解

回溯法,是一种系统地搜索问题的方法,其算法思想有点类似于树的深度遍历。可用于满足约束条件的可行解,或进一步求使目标函数取最大或最小值得最优解问题。

一般步骤为:1、定义一个解空间,它包含问题的解(问题的解空间通常是在搜索问题的解的过程中动态产生的)

      2、利用适于搜索的方法组织解空间 

      3、利用深度优先法搜索解空间

      4、利用限界函数避免移动到不可能产生解的子空间

 

2.请说明“子集和”问题的解空间结构和约束函数

解空间结构:子集树

约束函数:sum + a[t] <= c,向左剪枝;sum + rest >= c,向右剪枝

 

3.请说明在本章学习过程中遇到的问题及结对编程的情况

本章的难题主要在针对问题构造出解空间结构,这是用回溯法解决问题的关键步骤;还有就是根据不同的实际问题写出剪枝的算法。

在本章的结对编程过程中,遇到了不少难题,但最终都通过彼此的交流解决了问题,也促进了双方的进步,不断成长。

posted @ 2019-12-17 20:42  .Daylight  阅读(126)  评论(2编辑  收藏  举报