![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法设计
晨风先生
每一个解封的人都具有同等探索世界的能力。
一个被设计好的世界,和一个要改变世界的人。
大家好,我的偶像是乔帮主。
展开
-
流水线作业调度最小时间问题
实验名称:n个作业{1、2、…、n},要在3台机器上处理。每个作业必须先由机器1处理,再由机器2处理,最后由机器3处理。问如何确定这n个作业的调度次序,使得所需时间最少?设计一个回溯算法。算法设计思想:因为每个作业必须保证:先在机器1上处理,再在机器2上处理,最后在机器3上处理。即该批处理作业调度问题称为流水线调度问题更合适,要从n个作业的所有排列中找出有最小完成时间的作业调度,所以该批处理作业调度问题的解空间树是一颗排列树。 按照回溯法搜索排列树的算法框架,设开始时x=[1,2, … , n]是所原创 2020-06-01 21:41:14 · 3578 阅读 · 2 评论 -
回溯法应用:求解n皇后问题
八皇后问题是十九世纪著名的数学家高斯于1850年提出的。她是应用回溯法的经典问题之一。问题描述:在8×8的棋盘上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上。可以把八皇后问题扩展到n皇后问题,即在n×n的棋盘上摆放n个皇后,使任意两个皇后都不能处于同一行、同一列或同一斜线上。约束条件分析:显然,棋盘的每一行只能放一个皇后,所以n皇后问题的解应该是一个n元向量,X={X1,X2,X3…Xn}; Xi表示第i个皇后放在第i行第Xi列,其中1<=i<=n原创 2020-06-01 16:34:59 · 2762 阅读 · 0 评论 -
素数环问题----回溯法应用(1)
问题描述:把整数{1, 2, …, 20}填写到一个环中,要求每个整数只填写一次,并且相邻的两个整数之和是一个素数。例如,{1, 2, 3, 4}的填写结果:算法思想:这个素数环有20个位置,每个位置可以填写的整数有1~20共20种可能,可以对每个位置从1开始进行试探,约束条件是正在试探的数满足如下条件:(1)与已经填写到素数环中的整数不重复;(2)与前面相邻的整数之和是一个素数;(3)最后一个填写到素数环中的整数与第一个填写的整数之和是一个素数。在填写第k个位置时,如果满足上述约束条件,原创 2020-06-01 11:46:36 · 2205 阅读 · 0 评论