天天看點

[華為機試真題]72.作業系統任務排程問題

題目

作業系統任務排程問題。作業系統任務分為系統任務和使用者任務兩種。其中,

系統任務的優先級 < 50,使用者任務的優先級 >= 50且 <= 255。優先級大于255的為非法任務,應予以剔除。

現有一任務隊列task[],長度為n,task中的元素值表示任務的優先級,數值越小,優先級越高。

函數scheduler實作如下功能:

将task[] 中的任務按照系統任務、使用者任務依次存放到 system_task[] 數組和 user_task[] 數組中

(數組中元素的值是任務在task[] 數組中的下标),并且優先級高的任務排在前面,數組元素為-1表示結束。

例如:

task[] = {0, 30, 155, 1, 80, 300, 170, 40, 99}

system_task[] = {0, 3, 1, 7, -1}

user_task[] = {4, 8, 2, 6, -1}

代碼

繼續閱讀