A.哈夫曼编码问题
B.单源最短路径问题
C.最大团问题
D.最小生成树
第1题
阅读下列说明和图,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。
【说明】
某机器上需要处理 n 个作业 job1, job2, …, jobn,其中:
(1) 每个作业jobi(1≤i≤n)的编号为 i, jobi有一个收益值 p[i]和最后期限值 d[i];
(2) 机器在一个时刻只能处理一个作业,而且每个作业需要一个单位时间进行处理,
一旦作业开始就不可中断,每个作业的最后期限值为单位时间的正整数倍;
(3) job1~jobn 的收益值呈非递增顺序排列,即p[1]≥p[2]≥…≥p[n];
(4) 如果作业jobi在其期限之内完成,则获得收益 p[i];如果在其期限之后完成,
则没有收益。
为获得较高的收益,采用贪心策略求解在期限之内完成的作业序列。图 4-1 是基于贪
心策略求解该问题的流程图。
(1) 整型数组 J[]有 n 个存储单元,变量 k 表示在期限之内完成的作业数,J[1..k]存储所有能够在期限内完成的作业编号, 数组 J[1..k]里的作业按其最后期限非递减排序,即d[J[1]]≤ … ≤d[J[k]]。
(2) 为了方便于在数组 J 中加入作业,增加一个虚拟作业 job0,并令d[0] = 0, J[0] = 0。
(3) 算法大致思想:先将作业 job1 的编号 1 放入 J[1],然后,依次对每个作业 jobi (2≤i≤n)进行判定,看其能否插入到数组 J 中,若能,则将其编号插入到数组 J 的适当位置,并保证 J 中作业按其最后期限非递减排列,否则不插入。 jobi能插入数组 J 的充要条件是:jobi 和数组 J 中已有作业均能在其期限之内完成。
(4) 流程图中的主要变量说明如下:
i:循环控制变量,表示作业的编号;
k:表示在期限内完成的作业数;
r:若jobi能插入数组 J,则其在数组 J 中的位置为 r+1;
q:循环控制变量,用于移动数组 J 中的元素。
【问题 1】 (9 分)
请填充图4-1 中的空缺(1)、(2)和(3)处。
【问题 2】(4 分)
假设有 6 个作业 job1, job2, …, job6;
完成作业的收益数组 p=(p[1],p[2],p[3],p[4],p[5],p[6]) = (90,80,50,30,20,10);
每个作业的处理期限数组 d=(d[1],d[2],d[3],d[4],d[5],d[6]) = (1,2,1,3,4,3)。
请应用试题中描述的贪心策略算法,给出在期限之内处理的作业编号序列 (4)
(按作业处理的顺序给出) ,得到的总收益为 (5) 。
【问题 3】(2 分)
对于本题的作业处理问题, 用图 4-1的贪心算法策略, 能否求得最高收益? (6) 。
用贪心算法求解任意给定问题时,是否一定能得到最优解? (7) 。
第4题
八皇后问题的遗传算法求解。八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。下图给出了八皇后问题的一个解。回答问题。八皇后问题的建模。将棋盘抽象为n×n的矩阵(此时n=8,但抽象不限于n=8,可以是n皇后问题),=1表示放置皇后,=0表示未放置皇后,其目标函数为。因此八皇后问题求解的关键是设计约束条件,即满足什么条件的可能解才是可行解,而任何一个可行解都为满意解。有四个公式,表达了某种约束条件(注意,不能确定给出的公式一定是正确的),下列说法不正确的是_____。
A、式1表达了任何一列中的皇后个数只能有一个;式2表达了任何一行中的皇后个数只能有一个
B、式3表达了一条斜线上的皇后个数不能多于1个
C、式3和式4必须同时具备才能表达任何一条斜线上的皇后个数不能多于1个
D、式3和式4中关于h的相关内容是没有必要的
第5题
八皇后问题的遗传算法求解。八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。下图给出了八皇后问题的一个解。回答问题。八皇后问题的建模。将棋盘抽象为n×n的矩阵(此时n=8,但抽象不限于n=8,可以是n皇后问题),=1表示放置皇后,=0表示未放置皇后,其目标函数为。因此八皇后问题求解的关键是设计约束条件,即满足什么条件的可能解才是可行解,而任何一个可行解都为满意解。有四个公式,表达了某种约束条件(注意,不能确定给出的公式一定是正确的),下列说法不正确的是_____。
A、式3和式4中关于h的相关内容是没有必要的
B、式1表达了任何一列中的皇后个数只能有一个;式2表达了任何一行中的皇后个数只能有一个
C、式3表达了一条斜线上的皇后个数不能多于1个
D、式3和式4必须同时具备才能表达任何一条斜线上的皇后个数不能多于1个
第6题
八皇后问题的遗传算法求解。八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。下图给出了八皇后问题的一个解。回答问题。八皇后问题的建模。将棋盘抽象为n×n的矩阵(此时n=8,但抽象不限于n=8,可以是n皇后问题),=1表示放置皇后,=0表示未放置皇后,其目标函数为。因此八皇后问题求解的关键是设计约束条件,即满足什么条件的可能解才是可行解,而任何一个可行解都为满意解。有四个公式,表达了某种约束条件(注意,不能确定给出的公式一定是正确的),下列说法不正确的是_____。
A、式1表达了任何一列中的皇后个数只能有一个;式2表达了任何一行中的皇后个数只能有一个
B、式3表达了一条斜线上的皇后个数不能多于1个
C、式3和式4必须同时具备才能表达任何一条斜线上的皇后个数不能多于1个
D、式3和式4中关于h的相关内容是没有必要的
第8题
A.董事长甲向公众散布虚假信息,引起该公司股票市价上涨,然后将自己持有的该公司股票抛出。
B.总经理乙将公司的一笔暂时不用的资金用于个人炒股,获利后将这笔资金归还
C.副董事长丙以公司的一处房产为某个体户的贷款提供担保,获得酬金一笔。
D.副总经理丁得知某种货物价格将会上涨,将公司库存的这种货物卖给自己的亲戚,以后又替他将这批货物卖出,从中分得一部分利润。
第10题
A、需要计算机的存贮单元较少,程序设计简单
B、迭代法可以求得解析解
C、原始系数矩阵在计算过程中只会发生很小的变化
D、迭代法不用考虑收敛问题
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!