第六次实验报告.docVIP

  • 2
  • 0
  • 约2.61千字
  • 约 4页
  • 2024-03-01 发布于湖北
  • 举报

《算法设计与分析》实验报告

学号:081201102

姓名:郭晓刚

日期:2011-5

程序名:1.cpp2.cpp

实验内容:1.n皇后问题

2.装载问题

一、上机实验的问题和要求(需求分析):

这两个问题都是回朔法的经典问题,都分别可以用穷举法和回朔法实现,比较它们的时间效率。

二、程序设计的基本思想,原理和算法描述:

1.穷举法是把所有可能的结果都找出来,然后一一判断是否符合,其时间复杂度比较大

2.回朔法本质是在动态的生成一棵深度优先搜索的树,而且每一步都会判断是否满足必要条件,如果不符合就停止向下生成,时间复杂度要比穷举法好一些。

三、调试和运行程序过程中产生的问题及采取的措施:

1.n皇后问题不要输入太大的n,否则会有栈溢出的问题;另外dig数组表示主对角线上是否放有皇后,有为1,无为0;同理sec_dig数组表示副对角线是放置皇后情况。

2.装载问题中我们可以同过Ok来控制输出可行解的个数,这里只输出一个。

四、源程序,注释,分析及运行结果:

1.n皇后问题

#includestdio.h

#includestdlib.h

#defineswap(a,b){inttemp=a;a=b;b=temp;}

intn;

int*row,*dig,*sec

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档