图书馆管理系统(含代码)

图书馆管理系统(含代码)

ID:18004743

大小:1.16 MB

页数:99页

时间:2018-09-12

图书馆管理系统(含代码)_第1页
图书馆管理系统(含代码)_第2页
图书馆管理系统(含代码)_第3页
图书馆管理系统(含代码)_第4页
图书馆管理系统(含代码)_第5页
资源描述:

《图书馆管理系统(含代码)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、数据结构设计报告学院计算机科学与控制工程学院专业软件外包学生姓名李子豪学号201258504119officiallyestablishedonJuly1,2013,Yibincity,formerlyknownasthebus,integratedoriginalrongzhoubuscompanyinYibincityandMetrobuscompany,formedonlyinYibincityofaState-ownedpublictransportenterprises,thecompanyconsistsofoneortwo,

2、thirdDivision.Integrationofpublictransportservicesisnotyetestablished八皇后问题一.问题描述在8×8格的国际象棋棋盘上放置八个皇后,使得任意两个皇后不能互相攻击,即任何行、列或对角线(与水平轴夹角为45°或135°的斜线)上不得有两个或两个以上的皇后。这样的一个格局称为问题的一个解。请写出求出八皇后问题的算法。二.解题思路描述一个正确的解应当是每一列,每一行,每一条斜线上均只有一个皇后。对于递归算法,本人才有模拟的方式进行,而且,我觉得开辟一个二维数组更显而易见。首先,从

3、空棋盘开始摆放,保证第n行n个皇后互不攻击,然后摆放第n+1个皇后。当然对于第n+1个皇后可能有多种摆放方法,由此,我必须一一枚举,采用回溯策略是可行且合乎逻辑的。 在此过程中,我采用一维数组,一位对于八皇后问题,每一行不可能存在二个及二个以上的皇后,board[i]表示第i行棋盘摆放的位置为第board[i]列。递归方法借助于系统提供的栈。递归解法 #include#include#includeusingnamespacestd;constintMAX_SIZE=100;e

4、numflag{blank='X',queen=1};charChess[MAX_SIZE][MAX_SIZE];//棋盘图intn;//解决n皇后问题inttotal;//用于计摆放方式voidInit()officiallyestablishedonJuly1,2013,Yibincity,formerlyknownasthebus,integratedoriginalrongzhoubuscompanyinYibincityandMetrobuscompany,formedonlyinYibincityofaState-ownedp

5、ublictransportenterprises,thecompanyconsistsofoneortwo,thirdDivision.Integrationofpublictransportservicesisnotyetestablished{//对棋牌进行初始化    for(inti=0;i

6、是否可放置    inti,j;    for(i=r+1;i

7、   returnfalse;//45度斜线上已有一皇后    for(i=r+1,j=c-1;(i=0);i++,j--)        if(Chess[i][j]==queen)            returnfalse;//135度斜线上已有一皇后    returntrue;//排除四种情况后,说明(r,c)点可放置皇后}voidBacktrack(intk,intcnt){//回溯算法主程序        if(k<0

8、

9、cnt==n)//棋牌摆放完毕or以摆满n后    {        if(cnt==

10、n)        {            printf("No.%d:",++total);            for(inti=0;i

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

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

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