实验四回溯算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验四回溯算法的应用

一、实验目的

1.掌握回溯算法的基本思想、技巧和效率分析方法。

2.熟练掌握用回溯算法求解问题的基本步骤,非递归算法框架和递归算法框架。

3.学会利用回溯算法解决实际问题。

二、实验内容

1.问题描述:

题目一、 n后问题

在n*n格的棋盘上摆放n个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一对角线上,问有多少种摆法。

题目二、数字全排列问题

任意给出从1到N的N个连续的自然数,求出这N个自然数的各种全排列。如N=3时,共有以下6种排列方式:123,132,213,231,312,321。注意:数字不能重复,N由键盘输入。

题目三、0-1 背包问题

有N件物品和一个容量为V的背包。第i件物品的体积是v[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。

题目四、连续邮资问题

假设国家发行了n种不同面值的邮票,并且规定每个信封上最多只允许贴m 张邮票。连续邮资问题要求对于给定的n和m的值,给出邮票面值的最佳设计,使得可在1张信封上贴出从邮资1开始,增量为1的最大连续邮资区间。

【输入样例】

n=5

m=4

【输出样例】

1,3,11,15,32

含义:当n=5,m=4时,面值为{1,3,11,15,32}的5种邮票可以贴出邮资的最大连续区间是1到70。

2.数据输入:个人设定,由键盘输入。

3.要求:

1)上述题目任选一做。上机前,完成程序代码的编写

2)独立完成实验及实验报告

三、实验步骤

1.理解算法思想和问题要求;

2.编程实现题目要求;

3.上机输入和调试自己所编的程序;

4.验证分析实验结果;

5.整理出实验报告。

附:实验报告的主要内容

一.实验目的

二.问题描述

三.算法设计

包含:数据结构与核心算法的设计描述、函数调用及主函数设计、主要算法流程图等

四.程序调试及运行结果分析

五.实验总结

附录:程序清单(程序过长,可附主要部分)

相关文档
最新文档