文档介绍:存档资料成绩: 华东交通大学理工学院课程设计报告书所属课程名称数据结构题目骑士游历分院电信分院专业班级电子商务1班学号 20100210460123 学生姓名何芳林指导教师吴军良 2012年6月15日第一章第二章第三章目录课程设计内容及要求.....................2功能说明...............................3详细设计..............................................................................................................................................5第四章程序实现............................................................................................................................................................................................11第五章课程设计心得..........................12第六章参考文献(资料)......................13华东交通大学理工学院课程设计报告第一章课程设计内容及要求在一个棋盘上(8行8列)放一个“马”,按“马走日字”的规则,马要走到棋盘上每一个格子,且每个格子只走一次。用回溯法深度优先搜索,若寻找到满足要求的解,则输出;否则推回上一层往下一个方向搜索。对于当前所在位置(x,y),依次枚举8个方向搜索,直到找到一组可行解为止。使用剪枝有2处:第一、使用Warnsdorff'srule,枚举当前解得时候优先选择下一步可行步数最少的方向;第二、若第一点中的方向存在不止一个,则优先选择离中心位置较远的方向;每次都从中心点开始出发,求出一条合法路径后再平移映射回待求路径。华东交通大学理工学院课程设计报告第二章。创建一个8行8列的棋盘。。输入骑士的初始位置,进行骑士游历操作。。显示出游历结果。创建创建棋盘骑士游历实验过程操作进行游历显示显示游历结果图2-1功能模块图华东交通大学理工学院课程设计报告第三章:#include<>intboard[8][8]={0};intmain(void){for(i=0;i<8;i++){for(j=0;j<8;j++){printf("%2d",board[i][j]);}putchar('\n');}return0;},进行骑士游历操作:inti,j;printf("输入起始点:");inttravel(intx,inty){intktmove1[8]={-2,-1,1,2,2,1,-1,-2};intktmove2[8]={1,2,2,1,-1,-2,-2,-1};:intstartx,starty;inti,j;printf("输入起始点:");scanf("%d%d",&startx,&starty);if(travel(startx,starty)){printf("游历完成!\n");