華為機試題?

來源:果殼範文吧 3.92K

今天下午去上海的華為參加面試,一上來就是機試題,就一道,限時40分鐘。題目如下:
輸入一個大寫字母,將其轉化成對應小寫字母之後的第5個小寫字母(記為charValue),如果charValue超過了z,則輸出超過了幾位的`對應的小寫字母。例如,我輸入一個Y,它之後的第5個字母不存在,因為它超過了z4個,所以最終輸出d。
其實這道題不難,但苦於自己沒有好的解決方案,自己索性筆試的時候一個字母也沒寫。自己最初的解決思路是:首先計算輸入大寫字母對應的ASCII碼,然後ASCII碼加5就是之後的第五個大寫字母,然後再轉化成對應的小寫即所求。但是這裡的問題是當輸入的大寫字母隨延5個後的字母不是大寫字母對應的ASCII碼時改怎麼計算? 那麼就求教各位大神改怎麼解決,給出的函式定義如下,要求在函式裡面實現演算法:
public static Character toLower2Case(Character input){
return A;
}

華為機試題?
熱門標籤