- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
山东科技大学学生课程设计二分查找程序的实现需求分析对于
山东科技大学学生课程设计
PAGE 0
二分查找程序的实现
一、需求分析
对于最小重量机器设计问题,设计其回溯算法和分支限界算法的解决方案,并体会回溯方法和分支限界方法的区别。
二、概要设计及模块划分
(1) 最小重量机器设计问题的回溯算法
回溯算法划分成如下几个模块实现,包括:
主模块
被调用的第一个模块,叫backtrack名字,最小重量机器设计问题的回溯算法;
被调用的第二个模块,叫MinMachine名字,赋值的操作;
main
main
backtrack
MinMachine
(2) 最小重量机器设计问题的分支限界算法
分支限界算法划分成如下几个模块实现,包括:
主模块
MinHeap(int sz=DefaultSize)模块,构造函数,建立一个空堆;
MinHeap(E* arr,int n)模块,构造函数,通过数组来建堆;
Insert模块,将元素x插入到最小堆中;
RemoveMin模块,删除堆顶的最小元素;
IsEmpty模块,判断当前堆是否为空;
IsFull模块,判断当前堆是否为满;
MakeEmpty模块,把当前堆置空;
Display模块,显示当前堆的内容;
siftDown模块,下浮全部调整;
siftUp模块,上浮全部调整;
MinWeightMachine模块,计算最小重量;
AddLiveNode模块,添加活节点;
Machine模块,完成最小重量机器设计;
三、详细设计
(1) 最小重量机器设计问题的回溯算法流程图
backtrack函数流程图: MinMachine函数流程图:
main 主函数流程图:调用函数模块及输入、输出操作;
(2) 最小重量机器设计问题的分支限界算法流程图
MinHeap函数流程图:
a. MinHeap(int sz=DefaultSize) b. MinHeap(E* arr,int n)
Insert函数流程图: RemoveMin函数流程图:
AddLiveNode函数流程图: Display函数流程图:
siftDown函数流程图:
siftUp函数流程图:
Opetator函数流程: MinWeightMachine函数流程图:
Machine函数流程图: main函数流程图:
四、运行结果及分析
(1)最小重量机器设计问题的回溯算法运算结果
(2)最小重量机器设计问题的分支限界运算结果
五、总结
通过本次课程设计,让我清楚的明白了最小机器问题,分别学会使用回溯法和分支限界法,对于最小重量机器设计问题,了解了回溯方法和分支限界方法的区别。
附:主要源代码
#ifndef MINHEAP_h
#define MINHEAP_H
#includeiostream
#includestdio.h
#includestdlib.h
using namespace std;
#define DefaultSize 20
templateclass T,class E
class MinHeap
{
public:
MinHeap(int sz=DefaultSize);//构造函数,建立一个空堆
MinHeap(E* arr,int n); //构造函数,通过数组来建堆
~MinHeap() //析构函数,释放堆的内存空间
{delete [] heap;};
bool Insert(const E x); //将元素x插入到最小堆中
bool RemoveMin(E x); //删除堆顶的最小元素
bool IsEmpty()const //判断当前堆是否为空
{return currentSize==0;};
bool IsFull()const //判断当前堆是否为满
{return currentSize==maxHeapSize;};
void MakeEmpty() //把当前堆置空
{currentSize=0;};
void Display();
您可能关注的文档
最近下载
- 江淮瑞风S5_汽车使用手册用户操作图解驾驶指南车主车辆说明书电子版.pdf VIP
- 奶茶烤串策划方案.docx VIP
- 医院内部控制管理手册.pdf VIP
- 2025年党建知识测试复习卷含答案.docx VIP
- 10《往事依依》课件(共25张PPT).pptx VIP
- 建设工程工程量清单计价规范(GB 50500-2024).docx VIP
- 中国移动创世界一流“力量大厦”战略及党建知识测试题 .docx VIP
- 透析病人低血压个案护理.pptx
- (优质!)50500-2024建设工程工程量清单计价规范新旧版本的主要变化逐项对比分析.docx VIP
- 驾驶员岗位安全风险告知卡.docx VIP
文档评论(0)