骑士巡游问题C报告 本文关键词:巡游,骑士,报告
骑士巡游问题C报告 本文简介:软件课程设计1报告姓名:学号:姓名:学号:专业:计算机科学与技术设计题目:写程序求解骑士巡游问题指导教师:2010年07月01日中国矿业大学徐海学院课程设计综合成绩表班级计算机08-2姓名沈志伟学号22080381题目名称写程序求解骑士巡游问题成绩分项分数1、程序运行是否通过在线裁判系统(25分)
骑士巡游问题C报告 本文内容:
软件课程设计1报告
姓
名:
学
号:
姓
名:
学
号:
专
业:
计算机科学与技术
设计题目:
写程序求解骑士巡游问题
指导教师:
2010
年
07
月
01
日
中国矿业大学徐海学院课程设计综合成绩表
班
级
计算机08-2
姓
名
沈志伟
学
号
22080381
题目名称
写程序求解骑士巡游问题
成
绩
分
项
分
数
1、程序运行是否通过在线裁判系统(25分)
①题目难度系数(15分)
②通过与否系数(10分)
①
②
2、算法分析报告(45分)
①报告格式、版面是否清晰(10分)
②解题思路是否清晰,算法介绍是否详细(15分)
③流程图、算法时空复杂度分析详细程度(15分)
④源代码的格式、注释情况(5分)
①
②
③
④
3、答辩情况(30分)
①算法思路讲述清晰(15分)
②回答问题情况(15分)
①
②
总
评
成
绩
综合评定成绩
课程设计负责人签字:*年*月*日
目录
《Constructing
Roads》解题与算法分析报告
一、题目描述5
二、解题思路8
三、相关算法介绍8
四、主要数据结构8
五、流程图9
六、源程序11
七、时空分析13
一、题目描述
编写程序求解骑士巡游问题:在n行n列的棋盘上(如n=5),假设一位骑士(按象棋中“马走日”的行走法)从初始坐标位置(x1,y1)出发,要遍访(巡游)棋盘中的每一个位置一次。请编一个程序,为骑士求解巡游“路线图”(或告诉骑士,从某位置出发时,无法遍访整个棋盘
—
问题无解)。
输入
输入n行n列的棋盘的大小(1
n;
for(i=0;irow>>col;
b[row-1][col-1]=1;
//设置起始点
a[row-1][col-1]=false;
solve
(row-1,col-1,2,ok,n);
//调用函数计算结果
if(!ok)
cout<<“从点(“< return 0; } 7、 时空分析 时间复杂度: (1) 时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。 (2)时间复杂度 本题的时间复杂度为O(8n*n-1)。 空间复杂度: 本题的空间复杂度为O(n*n)。 10