12 2018 档案
摘要:给定n个作业的集合J={J1,J2,…,Jn}。每一个作业有两项任务分别在两台机器上完成。每个作业必须先由机器1处理,再由机器2处理。作业Ji需要机器j的处理时间为tji,i=1,2,…n,j=1,2。对于一个确定的作业调度,设Fji是作业i在机器j上完成处理的时间。则所有作业在机器2上完成处理的时
阅读全文
摘要:最佳调度问题【问题描述】 假设有n个任务由k个可并行工作的机器完成。完成任务i需要的时间为ti。试设计一个算法找出完成这n个任务的最佳调度,使得完成全部任务的时间最早。【编程任务】 对任意给定的整数n和k,以及完成任务i需要的时间为ti,i=1~n。编程计算完成这n个任务的最佳调度。【输入样例】7
阅读全文
摘要:这道题可以看为排列数的一个典型模块 一、算法实现题: 1、问题描述: 羽毛球队有男女运动员各n人,给定2个n×n矩阵P和Q。P[i][j]是男运动员i和女运动员j配对组成混合双打的男运动员竞赛优势;Q[i][j]则是女运动员i和男运动员j配合的女运动员竞赛优势。 由于技术配合和心理状态等各种因素的影
阅读全文
摘要:问题描述:设某一机器由n个部件组成,每一种部件都可以从m个不同的供应商处购得。设wij是从供应商j处够来的部件i的重量,cij是相应的价格。试设计一个算法,给出总价格不超过c的最小重量机器设计。 算法设计:对于给定的机器部件重量和机器部件价格,计算总价值不超过d的最小重量机器设计。 数据输入:第一行
阅读全文
摘要:操作系统考试老师出了两道题,一个是先进先出,另一个是银行家算法,题目如下 1.请使用FCFS算法模拟进程调度。假设系统有n (n>=2) 个进程,给定进程的到达时间以及需要执行的时间长短,给出相应的执行顺序。数据以文件方式给出,文件名为data.fcfs,格式为: 文件共n(N1…Nn)行. 在Nn
阅读全文
摘要:具体问题如下图 先看一下4*4的回溯过程 程序结束条件: 一组解:设标志,找到一解后更改标志,以标志做为结束循环的条件。 所有解:k=0 判断约束函数判断第k个后能不能放在x[k]处 两个皇后不能放在统一斜线上: 若2个皇后放置的位置分别是(i,j)和(k,l), 且 i-j = k -l 或 i+
阅读全文
摘要:初始条件如下 看下面的动图了解回溯的过程 对应的解空间和约束条件和状态树如下 设当前有N个物品,容量为M; 这些物品要么选,要么不选,我们假设选的第一个物品编号为i(1~i-1号物品不选),问题又可以转化为有N-I个物品(即第I+1~N号物品),容量为M-Wi的子问题……如此反复下去,然后在所有可行
阅读全文
摘要:参考:https://blog.csdn.net/changjiale110/article/details/79489884 !首先我们得知道概念: 前序遍历:先访问当前节点,再访问当前节点的左子树,最后访问当前节点的右子树。对于二叉树,深度遍历与此同。规律:根在前;子树在根后且左子树比右子树靠前
阅读全文
摘要:1)问题引导 一个demo 从上面我们可以知道不同的结合方式,矩阵计算的次序数不一样,那么如何求这个最小次序数的划分,即如何结合。这就是矩阵连乘问题 使用动态规划可以解决 如下图,如果我们使用递归,则会产生大量的重复计算,复杂度太高,当然使用备忘录降低复杂度。不过更好的是使用递推 递推算法分析如下:
阅读全文
摘要:具体问题的描绘和分析如下 从上图可知,要构造两个二维数组,数组L用来求各种取值的子最长公共子序列,则最后一个元素就是最长公共子序列的长度,从右边的二维表,数值为1,则就是公共的元素,我们用数组记录下来, 代码如下: 运行结果如下:
阅读全文
摘要:原问题是给出各个节点和各个节点的被查找概率,然后构造一棵各个节点平均被查找比较次数最小的树,则该问题可以用动态规划来解决 示例如下 推广到一般的情况,并设T(i, j)是由记录{ri, …, rj}(1≤i≤j≤n)构成的二叉查找树,C(i, j)是这棵二叉查找树的平均比较次数,有下列分析 观察这个
阅读全文