动态规划-流水线调度(Assembly Line Scheduling, ALS)

流水线调度问题,直接上图:

e为开始为进入流水线花费时间,a为station花费的时间,t为切换流水线花费时间,x为出流水线的时间,

代码中用total[0][i]和total[1][i]分别表示第0条和第1条流水线到station i 所花费的最短时间

代码(C语言写的心累):

#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#include<time.h>
#include<string.h>
#include<fstream>
#define MAX 200000
int assembleLineSequence(int *e, int t[][MAX], int a[][MAX],int *x, int n)
{
    int *total[2];    //记录到达每个station最小的时间花费
    total[0] = (int *)malloc(sizeof(int)*n);
    total[1] = (int *)malloc(sizeof(int)*n);
    total[0][0] = e[0] + a[0][0];
    total[1][0] = e[1] + a[1][0];
    for(int i=1; i<n; i++){
        if(total[0][i-1] + a[0][i] < tot
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值