任务调度和最小生成树
调度问题:
问题背景:一个共享资源,多个job要访问。question:那我们应该如何排列job的顺序假定:每个job 有优先级 ,和需要使用资源的时间长度当我们排列所有job之后,每个job都会有一个开始时间和结束时间,那么如何评定一个方案是不是好方案 ,/[ c_{i} /] 指的是任务最后完成时间/[ \min \left( \sum_{i=1}^{n}c_{i}w_{i}\right) /]ok 那么,我们的算法就需要解决上述问题:贪心for(int i = 1 ; i < n ; i ++){int mindist = 0x33fffff;// get minfor(int j = 1 ; j <= n ; j ++){if(used[j] == 0){if(dist[j] < mindist){mindist = dist[j];pos = j;}}}//end forans += mindist;used[pos] = 1;for(int j = 1 ; j <= n ; j ++){if(used[j] == 0){if(dist[j] > mat[pos][j])dist[j] = mat[pos][j];}}}