计算机算法分析课程设计

计算机算法分析课程设计

ID:33696758

大小:607.50 KB

页数:16页

时间:2019-02-28

计算机算法分析课程设计_第1页
计算机算法分析课程设计_第2页
计算机算法分析课程设计_第3页
计算机算法分析课程设计_第4页
计算机算法分析课程设计_第5页
资源描述:

《计算机算法分析课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、沈阳理工大学摘要算法设计与分析,其实可以解释为一类优化问题,一般针对可以利用计算机解决的离散型问题的优化。主要目的就是为了解决某一问题而提出的各种不同的解决方案,并且要针对具体问题做细致的空间与时间复杂度分析。本文通过计算机算法分析设计出解最优二叉搜索树问题的动态规划算法和设计出解图的着色问题全部可行解的回溯法算法,利用C++语言编写程序实现算法。动态规划算法是将待求解的问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。首先找出最优解的性质,并刻画其结构特征,然后递归的定义最优值(写出动态规划方程)并且以自底向上的方式计算出最优值,最后

2、根据计算最优值时得到的信息,构造一个最优解。回溯法算法是确定了解空间的组织结构后,回溯法就是从开始节点(根结点)出发,以深度优先的方式搜索整个解空间。这个开始节点就成为一个活结点,同时也成为当前的扩展结点。在当前的扩展结点处,搜索向纵深方向移至一个新结点。这个新结点就成为一个新的或节点,并成为当前扩展结点。如果在当前的扩展结点处不能再向纵深方向移动,则当前的扩展结点就成为死结点。换句话说,这个节点,这个结点不再是一个活结点。此时,应往回(回溯)移动至最近一个活结点处,并使这个活结点成为当前的扩展结点。回溯法即以这种工作方式递归的在解空间中搜索,直到找到所要求的

3、解或解空间中以无活结点为止。即通过确定初始解和剪枝函数原则画出状态图进行搜索产生全部可行解。关键词:动态规划;二叉搜索树;回溯法;剪枝原则;C++14沈阳理工大学目录一、课程设计目的1二、课程设计内容1三、概要设计13.1动态规划—最优二叉搜索树13.2回溯法—图的着色1四、详细设计与实现24.1动态规划—最优二叉搜索树24.1.1最优二叉搜索树问题描述和分析24.1.2最优子结构性质34.1.3递归计算最优值44.1.4算法实现题44.2回溯法—图的着色64.2.1图的m着色问题描述64.2.2算法设计74.2.3算法实现题8总结13参考文献1414沈阳理工

4、大学一、课程设计目的《计算机算法设计与分析》这门课程是一门实践性非常强的课程,要求我们能够将所学的算法应用到实际中,灵活解决实际问题。通过这次课程设计,能够培养我们独立思考、综合分析与动手的能力,并能加深对课堂所学理论和概念的理解,可以训练我们算法设计的思维和培养算法的分析能力。二、课程设计内容1、动态规划:设计出解最优二叉搜索树问题的动态规划算法;2、回溯法:设计出解图的着色问题全部可行解的回溯法算法。三、概要设计3.1动态规划—最优二叉搜索树动态规划的基本思想是将问题分解为若干个小问题,解子问题,然后从子问题得到原问题的解。设计动态规划法的步骤:(1)找出

5、最优解的性质,并刻画其结构特征;(2)递归地定义最优值(写出动态规划方程);(3)以自底向上的方式计算出最优值;(4)根据计算最优值时得到的信息,构造一个最优解。3.2回溯法—图的着色14沈阳理工大学回溯法的基本思想是确定了解空间的组织结构后,回溯法就是从开始节点(根结点)出发,以深度优先的方式搜索整个解空间。这个开始节点就成为一个活结点,同时也成为当前的扩展结点。在当前的扩展结点处,搜索向纵深方向移至一个新结点。这个新结点就成为一个新的或节点,并成为当前扩展结点。如果在当前的扩展结点处不能再向纵深方向移动,则当前的扩展结点就成为死结点。换句话说,这个节点,这

6、个结点不再是一个活结点。此时,应往回(回溯)移动至最近一个活结点处,并使这个活结点成为当前的扩展结点。回溯法即以这种工作方式递归的在解空间中搜索,直到找到所要求的解或解空间中以无活结点为止。用回溯法解决图的着色问题的步骤:(1)针对所给问题,定义问题的解空间;(2)确定易于搜索的解空间结构;(3)以深度优先方式搜索解空间,并在搜索过程中用剪枝函数原则避免无效搜索。四、详细设计与实现4.1动态规划—最优二叉搜索树4.1.1最优二叉搜索树问题描述和分析设是有序集,且,表示有序集S的二叉搜索树利用二叉树的结点存储有序集中的元素。它具有下述性质:存储于每个结点中的元素

7、x大于其左子树中任一结点所存储的元素,小于其右子树中任一结点所存储的元素。二叉树的叶结点是形如的开区间,在表示S的二叉搜索树中搜索元素x,返回的结果有两种情况:(1)在二叉搜索树的内结点中找到。(2)在二叉搜索树的叶结点中确定。设在第(1)中情形中找到元素的概率为;在第(2)种情形中确定的概率为。其中约定。显然有:称为集合S的存取概率分布。在表示S的二叉搜索树T中,设存储元素的结点深度为;叶结点的结点深度为,则:14沈阳理工大学表示在二叉搜索树T中进行一次搜索所需要的平均比较次数,p又成为二叉搜索树T的平均路长。在一般情况下,不同的二叉搜索树的平均路长是不相同

8、的。最优二叉搜索树问题是对于有序集S及

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。