// ostaskscheme.cpp : 定義控制台應用程式的入口點。//#include "stdafx.h"
#include using namespace std;
#define max 100
/*問題說明:
作業系統任務分為系統任務和使用者任務兩種。
系統任務的優先順序 < 50,使用者任務的優先順序 >= 50且 <= 255。優先順序大於255的為非法任務,應予以剔除。
現有一任務佇列task,長度為n,task中的元素值表示任務的優先順序,數值越小,優先順序越高。
函式scheduler實現如下功能:
將task 中的任務按照系統任務、使用者任務依次存放到 system_task 陣列和 user_task 陣列中(陣列中元素的值是任務在task 陣列中的下標),並且優先順序高的任務排在前面,陣列元素為-1表示結束。
*//*測試用例:
task =
system_task =
user_task =
*/typedef struct tasknodetask_node;
void scheduler(int task, int n, int system_task, int user_task)
//利用冒泡進行排序
for(i = n; i >= 2;i--)
} if (flag == 0)
} //
//將任務序號分類存入陣列.
j = k = 0;
for(i = 0;i < n;i++)
else if(tasklist[i].value >= 50 && tasklist[i].value <= 255)
else
continue;
} system_task[j] = -1;
user_task[k] = -1;
delete tasklist;
//輸出歸類結果.
for(int m = 0;m <= j;m++)
cout << system_task[m] << " ";
cout << endl;
for(int m1 = 0;m1 <= k;m1++)
cout << user_task[m1] << " ";
cout << endl;
}void test();
int system_task[max];
int user_task[max];
scheduler(task, 9, system_task, user_task);
}int _tmain(int argc, _tchar* argv)
資料結構鐵軌問題 資料結構練習專題
下面我給大家帶來一些資料結構的題,供大家欣賞 一 棧 鐵軌試題描述 某城市有乙個火車站,鐵軌鋪設如圖所示,有n節車廂從a方向駛入車站,按進站順序編號為1至n。你的任務是判斷是否能讓它們按照某種特定的順序進入b方向的鐵軌並駛出車站。為了重組車廂,你可以借助中轉站c。這是乙個可以停放任意多節車廂的車站,...
資料結構練習
include include define size 20 typedef struct list 重新命名結構體 list t 建立 list t creat list int size list length 0 空表初始化,實際長度為0 return list 返回堆區申請的首位址 判空 i...
資料結構練習(42)八皇后問題
思路 1.生成一組初始資料 01234567 2.對這組資料進行排列組合,然後找滿足8皇后解法的排列即 任何兩個皇后都不能在同一列或對角線上 3.permutation的時候要注意,交換資料要從自身交換起,終止的時候是index length。include using namespace std ...