3、作業系統任務排程問題。作業系統任務分為系統任務和使用者任務兩種。其中,系統任務的優先順序 < 50,使用者任務的優先順序 >= 50且 <= 255。優先順序大於255的為非法任務,應予以剔除。現有一任務佇列task,長度為n,task中的元素值表示任務的優先順序,數值越小,優先順序越高。函式scheduler實現如下功能,將task 中的任務按照系統任務、使用者任務依次存放到 system_task 陣列和 user_task 陣列中(陣列中元素的值是任務在task 陣列中的下標),並且優先順序高的任務排在前面,優先順序相同的任務按照入隊順序排列(即先入隊的任務排在前面),陣列元素為-1表示結束。
例如:task = system_task = user_task =
函式介面 void scheduler(int task, int n, int system_task, int user_task)
邏輯弄清楚,**提交給面試官看之前先執行幾個測試用例檢查一下
#includeconst int maxn = 100;
void scheduler(int task, int n, int system_task, int user_task)
int usefulnumbers = 0;
for(int i = 0; i < n; ++i)
//printf("%d\n", usefulnumbers);
int systemindex = 0;
int userindex = 0;
int small = 0x7fffffff;
int smallindex = 0;
for(int i = 0; i < usefulnumbers; ++i)
}if(small < 50) //這個判斷條件也應該放在外面,邏輯弄清楚了
else if(small >= 50 && small <= 255)
}system_task[systemindex] = -1;
user_task[userindex] = -1;
for(int i = 0; i < systemindex; ++i)
printf("%d\n", system_task[systemindex]);
for(int i = 0; i < userindex; ++i)
printf("%d\n", user_task[userindex]);
}int main()
; int system_task[maxn], user_task[maxn];
scheduler(task, 9, system_task, user_task);
return 0;
}
2012華為機試 北京
這段時間忙著找工作,今天中午12 30,在北郵參加了華為的機試。很簡單的乙個問題。問題如下 給你乙個數字字串 123 121 2332 讓你判斷該字串是否為回文字串。請補充完方法 返回字串 結果為 true 或者 false public string ispalindromic string in...
華為機試題第三題
輸入乙個正整數x,在下面的等式左邊的數字之間新增 號或者 號,使得等式成立。1 2 3 4 5 6 7 8 9 x 比如 12 34 5 67 89 5 1 23 4 5 6 7 8 9 5 請編寫程式,統計滿足輸入整數的所有整數個數。輸入 正整數,等式右邊的數字 輸出 使該等式成立的個數 樣例輸入...
華為2012吉大機試回顧
華為吉大機試的題目比較簡單,也許這個也歸於華為今年的招聘人數比較多得緣故?這個我就無從考證了。凡是於技術類有關的應聘者是有必要參加華為機試的。機試為每個人乙個題,因為在吉大參加招聘的人比較多,結果分成四批來參加了機試過程。但是考試題目只有三個。我是第四批的,所以我們這批抽到得題是上三輪抽過的,答起來...