[编程难题]编写一个求解时间满足约束的的算法.说明内详.真诚求助

问题描述

1/已知有如下一组活动,每个活动都有其工作时间和所需人力,在保证活动前后顺序和不超过人力资源约束的前提下,求得所有活动完成的总共最短工作时间.已知参数如下:说明:活动序号j,工作时间pj,所需人力lj,前序活动Lj,优先权v(j)活动的优先权:j1234567891011v(j)1011793854621总的人力资源约束maxReaource为常量6,指的是同时工作的人力数量不能超过此常量以上数据和人力资源约束常量均为已知,活动序号不表示活动的执行顺序.2/求解假设为每个活动随机分配一个不重复的正整数为活动优先权,在两活动竞争执行位置时优先权高的竞争到此位置.(如活动2,3竞争执行时,由于活动3的优先权6>活动2的优先权5,所以3执行)说明:求得结果应该如下图j节点下标;s-正在处理下标v(j)活动j的优先权j*s中最大的优先权的活动s已排序活动最后一个活动的结束时间为253/算法:输入:节点的先后顺序,优先权,所需人力,工作时间输出:最后一个活动的结束时间beginintm=10;//活动的数量Task[]processing=newTask[m];//正在处理活动集合Task[]scheduled=newTask[m];//已排序活动集合intstartTime=0;//初始化活动开始时间intfinishTime=0;//初始化活动结束时间intj=0;//活动下标intmaxReaource=6;while(j<m)do把后序节点加入正在处理活动集合;选择此集合中优先权最大的一个活动;活动j的最早开始时间为它所有前序任务的最晚完成时间;活动j的开始时间为最小的f,f满足(1)最早开始时间<=f(2)在时间l内可用资源数量<=maxHead(所需人力)l=f,f+1,…f+processing_time;活动j的结束时间为它的开始时间+它的处理时间;将此活动加入到已排序活动集合中;在正在处理活动集合中删除此活动;j=j+1;endoutput最后一个活动的完成时间end4/一些定义:活动类定义如下:publicclassTask{privateint_task_id;privatestring_task_name;privateint_rpoject_id;privateint_task_type;privateint_task_lines;privateint_processing_time;privateint_max_head;privateTask[]_pre_tasks;privateint_priority;privateint_employee_id;privateint_cost_on_task;privateint_start_time;privateint_finish_time;}publicclassTask_pre{privateint_task_id;privateint_task_pre_id;}以上两个类的数据都保存在SQLServer数据库的数据表之中

解决方案

解决方案二:
迷糊,顶
解决方案三:
看着就有点迷!帮顶吧。
解决方案四:
用树呢帮顶下
解决方案五:
的确是复杂了点,但是很有挑战,也挺有难度,还恳请高手指教
解决方案六:
google"图的宽度优先搜索".也就是用一个队列,依次遍历同层节点.
解决方案七:
何不转换成立体几何?最后求得是体积,也就是时间了
解决方案八:
怎么感觉有点运筹学的意思?有点像优化,都忘了。。。
解决方案九:
路由上的寻址算法叫做最小红点集算法。
解决方案十:
代码嘛,自己写咯。。
解决方案十一:
老王就是算法不会写才请教的我是初学者还请多指教
解决方案十二:
shrineraingoogle"图的宽度优先搜索".路由上的寻址算法叫做最小红点集算法。你们能提供更详细些的说明吗?多谢

时间: 2025-01-21 09:19:56

[编程难题]编写一个求解时间满足约束的的算法.说明内详.真诚求助的相关文章

在一个整型数组中有一个元素的出现次数超过了数组长度的一半,试设计一个 在时间上尽可能高效的算法,找出这个元素。

题目:在一个整型数组中有一个元素的出现次数超过了数组长度的一半,试设计一个 在时间上尽可能高效的算法,找出这个元素.要求:(1)给出算法的基本设计思想.(2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释.(3)说明你所设计算法的时间复杂度和空间复杂度. (1)基本的设计思想: 一个数字出现的次数超过了长度的一半, 那么我们可以这样认为这个数字出现的个数一定大于其他全部数字出现的个数之和.算法的步骤如下: ①设数组为data[],数组长度为n,i=1.置currentAxi

java 面试中的一道编写一个截取字符串的函数!!!!

函数|字符串 编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串. 但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF",6,应该输出为"我ABC"而不是"我ABC+汉的半个". package string;class SplitString { private String str; private int byteNum; publi

求解:编写一个程序,接受一个整数输入,然后显示所有小于或等于该数的素数。

问题描述 求解:编写一个程序,接受一个整数输入,然后显示所有小于或等于该数的素数. #include #include #include int main(void) { int i; while(scanf("%d",i)) { for(int j=1;j<=i;j++) { for(int k=1;k<j;k++) { if(j%k==0) continue; else goto line; } line: printf("there are %d"

c语言-我的C语言基础入门时编写一个代码,出现问题,希望得到求解。

问题描述 我的C语言基础入门时编写一个代码,出现问题,希望得到求解. 它提示我说的 --------------------Configuration: one - Win32 Debug-------------------- Compiling... one.c D:C语言MSDev98MyProjectsoneone.c(12) : error C2065: 'FebSold' : undeclared identifier D:C语言MSDev98MyProjectsoneone.c(1

c++ 编程问题-大神!求助!初学!C++想编写一个基于命令提示符的日记本

问题描述 大神!求助!初学!C++想编写一个基于命令提示符的日记本 初学C++想编写一个基于命令提示符的日记本代码没有报错,但是程序不能按步骤执行.菜单项1.写日记2.查看历史(暂时不实现)3.退出编译环境用的visual studio 2013 代码如下:/*menuinputsave*/#include using namespace std;const int d_array=20;void diary_menu();int judge_dparameter();void cycle_me

如何编写一个过滤掉HTML代码的函数?_编程10000问

如何编写一个过滤掉HTML代码的函数?<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> <%Function Filterhtml(strToFilter)  Dim strTemp  strTemp = strToFilter  While Instr(1,strTemp,"<") AND Instr(1, strTemp, "

如何编写一个创建FTP站点的函数?_编程10000问

如何编写一个创建FTP站点的函数? Function ASTCreateFtpSite(IPAddress, RootDirectory, ServerComment, HostName, PortNum, Computer, Start,LogFileDirectory)    Dim MSFTPSVC, FtpServer, NewFtpServer, NewDir    Dim Bindings, BindingString, NewBindings, Index, SiteObj, bD

c++-如何用java或者C++编写一个可以验证网络IP接入段合法性并且控制其流量的简易服务器呢?

问题描述 如何用java或者C++编写一个可以验证网络IP接入段合法性并且控制其流量的简易服务器呢? 本人不是学编程,但是毕业设计里面需要做这个 ,希望各路大神不吝赐教 解决方案 http://wenku.baidu.com/link?url=j_QVex7Ffpzw6nOsgiUK3NIdDmNy0sSKt1WuWluBvu6Y9b1Xd41XMPXeDLa5W9zdVErzoScQCyjj_1T1EygG8cX3GaJsr3zxrtOtWI8ZIvO 解决方案二: 计算单位时间write的数

api-百度地图API编写一个起点到终点的

问题描述 百度地图API编写一个起点到终点的 <br> body, html{width: 100%;height: 100%;margin:0;font-family:"微软雅黑";}<br> #allmap{height:500px;width:100%;}<br> #r-result{width:100%; font-size:14px;}<br> 城市名定位 城市名: // 百度地图API功能 var map = new BMap