资源调度问题——贪心算法

资源调度:给定等待服务的客户集合A = {1, 2, …, n},预计对客户i的服务时间是ti,该客户希望的完成时间是di,即T = { t1, t2,…, tn},D = { d1, d2,…, dn}。如果对客户i的服务在di之前结束,那么对客户i的服务没有延迟;如果在di之后结束,那么这个服务就被延迟了,延迟的时间等于该服务时间减去di。假设都是tidi正整数,一个调度是函数fAN,其中是对客户i的服务开始的时间,要求所有区间互不重叠。一个调度f的最大延迟是所有客户延迟时间的最大值,例如:

          A ={1, 2, 3, 4, 5}

          T= {5, 8, 4, 10, 3}

          D = {10, 12 , 15, 11,20}

那么对于调度f1

          f1:{1, 2, 3, 4, 5} → N

          f1(1)

你可能感兴趣的:(贪心算法,算法,java)