网友您好, 请在下方输入框内输入要搜索的题目:
题目内容
(请给出正确答案)
n皇后问题是可用回溯法解决的问题。下面描述不正确的是?
A.当其解空间树是n叉树时,其显约束条件是任一行只能安排一个皇后,其隐约束条件是任一列和任一(正反)对角线只能安排一个皇后。
B.当其解空间树是排列树时,其显约束条件是任一行或任一列只能安排一个皇后,其隐约束条件是任一(正反)对角线只能安排一个皇后。
C.算法搜索至叶子结点时,就找到一种新的皇后安排方案
D.两种不同解空间树的算法效率比较,排列树的时间耗费比n叉树要高
参考答案和解析
两种不同解空间树的算法效率比较,排列树的时间耗费比 n 叉树要高
更多 “n皇后问题是可用回溯法解决的问题。下面描述不正确的是?A.当其解空间树是n叉树时,其显约束条件是任一行只能安排一个皇后,其隐约束条件是任一列和任一(正反)对角线只能安排一个皇后。B.当其解空间树是排列树时,其显约束条件是任一行或任一列只能安排一个皇后,其隐约束条件是任一(正反)对角线只能安排一个皇后。C.算法搜索至叶子结点时,就找到一种新的皇后安排方案D.两种不同解空间树的算法效率比较,排列树的时间耗费比n叉树要高” 相关考题
考题
要在8×8的棋盘上摆放8个"皇后",要求"皇后"之间不能发生冲突,即任何两个"皇后"不能在同一行、同一列和相同的对角线上,则一般采用()来实现。
A.分治法B.动态规划法C.贪心法D.回溯法
考题
回溯法也称为试探法。以下关于回溯法的结论中正确的是(50)。A.即使问题的解存在,回溯法不一定能找到问题的解B.回溯法找到的问题的解不一定是最优解C.回溯法不能找到问题的全部解D.回溯法无法避免求出的问题解的重复
考题
算法是为解决某个问题而设计的步骤和方法。以下关于算法的叙述中,不正确的是 (52)。A.解决同一个问题,不同的人(甚至是同一个人)可能会写出几种不同的算法B.常用算法主要有迭代法、穷举搜索法、递推法、递归法、贪婪法、回溯法等C.递推法是利用所解问题本身所具有的递推关系来求得问题解的一种算法D.任何可以用递推法解决的问题,亦可用递归法解决,反之亦然
考题
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。
【说明】
n-皇后问题是在n行n列的棋盘上放置n个皇后,使得皇后彼此之间不受攻击,其规则是任意两个皇后不在同一行、同一列和相同的对角线上。
拟采用以下思路解决n-皇后问题:第i个皇后放在第i行。从第一个皇后开始,对每个皇后,从其对应行(第i个皇后对应第i行)的第一列开始尝试放置,若可以放置,确定该位置,考虑下一个皇后;若与之前的皇后冲突,则考虑下一列;若超出最后一列,则重新确定上一个皇后的位置。重复该过程,直到找到所有的放置方案。
【C代码】
下面是算法的C语言实现。
(1)常量和变量说明
pos:一维数组,pos[i]表示第i个皇后放置在第i行的具体位置。
count:统计放置方案数。
i,j,k:变量。
N:皇后数。
(2)C程序
#include #include #define N4/*判断第k个皇后目前放置位置是否与前面的皇后冲突*/in isplace(int pos[],int k) {int i;for(i=1; i=1) {pos[j]= pos[j]+1;/*尝试摆放第i个皇后*/while(pos[j]
【问题1】(10分)
根据以上说明和C代码,填充C代码中的空(1)~(5)。
【问题2】(2分)
根据以上说明和C代码,算法采用了(6)设计策略。
【问题3】(3分)
上述C代码的输出为:(7)。
考题
阅读下列说明和 C 代码,回答问题 1 至 3,将解答写在答题纸的对应栏内 【说明】 n 皇后问题描述为:在一个 nXn 的棋盘上摆放 n 个皇后,要求任意两个皇后不能冲突, 即 任意两个皇后不在同一行、同一列或者同一斜线上。算法的基本思想如下: 将第 i 个皇后摆放在第 i 行,i 从 1 开始,每个皇后都从第 1 列开始尝试。尝试时判断 在 该列摆放皇后是否与前面的皇后有冲突,如果没有冲突,则在该列摆放皇后,并考虑摆 放 下一个皇后;如果有冲突,则考虑下一列。如果该行没有合适的位置,回溯到上一个皇后 考虑在原来位置的下一个位置上继续尝试摆放皇后,……,直到找到所有合理摆放方案。 【C 代码】 下面是算法的 C 语言实现。 (1)常量和变量说明
【问题 1】(8 分) 根据题干说明,填充 C 代码中的空(1)?(4)。
【问题 2】(3 分) 根据题干说明和 C 代码,算法采用的设计策略为
【问题 3】(4 分) 当 n=4 时,有 (6) 种摆放方式,分别为 (7) 。有2种摆法
考题
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。
【说明】
n-皇后问题是在n行n列的棋盘上放置n个皇后,使得皇后彼此之间不受攻击,其规则是任意两个皇后不在同一行、同一列和相同的对角线上。
拟采用以下思路解决n-皇后问题:第i个皇后放在第i行。从第一个皇后开始,对每个皇后,从其对应行(第i个皇后对应第i行)的第一列开始尝试放置,若可以放置,确定该位置,考虑下一个皇后;若与之前的皇后冲突,则考虑下一列;若超出最后一列,则重新确定上一个皇后的位置。重复该过程,直到找到所有的放置方案。
【C代码】
下面是算法的C语言实现。
(1)常量和变量说明
pos:一维数组,pos[i]表示第i个皇后放置在第i行的具体位置
count:统计放置方案数
i,j,k:变量
N:皇后数
【问题1】(10分)
根据以上说明和C代码,填充C代码中的空(1)~(5)。
【问题2】(2分)
根据以上说明和C代码,算法采用了(6)设计策略。
【问题3】(3分)
上述C代码的输出为:(7)。
考题
要在8×8的棋盘上摆放8个"皇后",要求"皇后"之间不能发生冲突,即任何两个"皇后"不能在同一行、同一列和相同的对角线上,则一般采用()来实现。A、分治法B、动态规划法C、贪心法D、回溯法
考题
关于回溯搜索法的介绍,下面()是不正确描述。A、回溯法有“通用解题法”之称,它可以系统地搜索一个问题的所有解或任意解B、回溯法是一种既带系统性又带有跳跃性的搜索算法C、回溯算法在生成解空间的任一结点时,先判断该结点是否可能包含问题的解,如果肯定不包含,则跳过对该结点为根的子树的搜索,逐层向祖先结点回溯D、回溯算法需要借助队列这种结构来保存从根结点到当前扩展结点的路径
考题
使用回溯法进行状态空间树裁剪分支时一般有两个标准:约束条件和目标函数的界,N皇后问题和0/1背包问题正好是两种不同的类型,其中同时使用约束条件和目标函数的界进行裁剪的是(),只使用约束条件进行裁剪的是()。
考题
发现与明确问题是设计的第一个环节,明确设计要解决的技术问题不包括()A、判断问题是否值得解决B、判断问题是否当前可以解决C、判断解决该问题所得到的产出是否比投入多D、判断问题是否能够解决
考题
填空题使用回溯法进行状态空间树裁剪分支时一般有两个标准:约束条件和目标函数的界,N皇后问题和0/1背包问题正好是两种不同的类型,其中同时使用约束条件和目标函数的界进行裁剪的是(),只使用约束条件进行裁剪的是()。
考题
单选题关于回溯搜索法的介绍,下面()是不正确描述。A
回溯法有“通用解题法”之称,它可以系统地搜索一个问题的所有解或任意解B
回溯法是一种既带系统性又带有跳跃性的搜索算法C
回溯算法在生成解空间的任一结点时,先判断该结点是否可能包含问题的解,如果肯定不包含,则跳过对该结点为根的子树的搜索,逐层向祖先结点回溯D
回溯算法需要借助队列这种结构来保存从根结点到当前扩展结点的路径
考题
多选题在项目的问题陈述时,以下哪些说法是不正确的()A问题是客观的,通过描述缺陷,对问题产生的原因进行客观的判断B问题是具体的,要将影响流程改进的部门和人员的责任具体化C问题是可控的,所以要给出明确的解决方案D问题是可测量的,使用量化的语言说明问题有多严重,发生了什么影响
考题
单选题下列算法中不能解决0/1背包问题的是()A
贪心法B
动态规划C
回溯法D
分支限界法
热门标签
最新试卷