華爲機試題庫 java

1.程序實現目標: 輸入一個字符串,將其各個字符對應的ASCII值加5後,輸出結果。算法

 程序要求:該字符串只包含小寫字母,若其值加5後的字符值大於'z',將其轉換成從a開始的字符。數組

2.程序實現目標:求一個整型數組中元素的平均值,並統計其中大於和小於此平均值的元素的個數。app

  程序要求:輸入:整型數組中的元素個數及各個元素。函數

                     輸出:整型數組中元素的平均值,大於和小於此平均值的元素的個數。測試

 

三、手動輸入一個存儲整數的數組,要求輸出數組裏面的2個最大值。編碼

   實例: .net

             輸入:1,2,5,9,84,3,23d

             輸出:84,9排序

 

 

四、迴文數字判斷。遞歸

題目描述:

    有這樣一類數字,他們順着看和倒着看是相同的數,例如:121,656,2332等,這樣的數字就稱爲:迴文數字。編寫一個函數,判斷某數字是不是迴文數字。

    要求實現方法:

public String isPalindrome(String strIn);

【輸入】strIn: 整數,以字符串表示;

【返回】true: 是迴文數字;

              false: 不是迴文數字;

 

 

【注意】只須要完成該函數功能算法,中間不須要有任何IO的輸入輸出

 

 

五、要求:隨機打印50個隨機(4-10長度)的字符串,要求字符串包含的範圍是全部的英文字母包含大小寫和數字,按照編碼順序排序,每行打印4個,要求首字符對齊

6.手動輸入一個字符串,僅限小寫字母,統計並輸出每一個字符在字符串中出現的次數,並輸出。提示(能夠用Map)

實例:

輸入:aaabbbccc

輸出:a 3

           b 3

           c 3

 

七、要求實現方法public String addTwoBigNumber(String s1,string s2)

 大數相加,注意處理異常

 

public class Test{

public String addTwoBigNumber(String s1,string s2)

{

    return "";

}

 

public static void main(String[] args)

{

     Test test = new Test();

     test.addTwoBigNumber("123456789","987654321")

 

}

}

 

八、比較二維數組列最小值,組成一個新數組返回。(實現核心算法,不須要使用IO)

輸入:intArr = {{5,6,1,16},{7,3,9}}

輸出:intArrs ={1,3}

 

9. 輸入:a aa,cat tiger.123dd 

輸出: tiger

功能描述:鍵盤輸入一句話

               輸出一句話中最常的單詞,若是最長的出現屢次,返回第一個。

               這句話只包含數字字母和標點。

10. 功能描述:將字符串中的字母所有替換成字母的下一個字母,

要是最後一位是z或Z則替換爲a或A。

輸入:aBxyZ

輸出:bCyzA

 

 

11. 功能描述:判斷一個字符串中是否只含有相同的子字符串(子串長度>=2)

輸入:abab 

返回:true

輸入:abcd

返回:false

 

要求實現方法:

public boolean checkString(String data)

{

    //TODO

    return false;

}

 

12. 功能描述:已知:yi er san si wu liu qi ba jiu 分別對應123456789,

對一段只含有這幾種字符串的字符串進行轉換,如:

輸入:yiersansan

輸出:1233

要求實現方法:

public String trunNumber(String data)

{

    //TODO

    return "";

}

13. 功能描述:刪除字符串中字符個數最少的字符,最少字符串有多個,最少的要所有刪除

               而後返回該子字符串。

輸入:asdasdas

輸出:asasas

14. 功能描述:找出一個int[]中知足 2^n的數字,而後組成的新的數組

輸入:{4,3,8}

輸出:{4,8}

 

15. 

功能描述:共data1我的,圍成一圈,而後標號,從1-data1。

                 而後從data2號開始從1報數,報3的出列,求出列序列。

                返回一個數組

如:

輸入:3,2

輸出:1,2,3

要求實現方法:

/**

 * data1:人數

 * data2 : 起始位置

 *

 */

public int[] circleOut(int data1,int data2)

{

     int outNum = 3;

    //TODO

    return null;

}

 

16. 功能描述:統計一個數字轉爲二進制後,0和1的個數,組成數組返回

輸入:6

輸出:{1,2}

17. 功能描述:對一個二進制數的每位進行0和1反轉,求翻轉後的二進制所對應的十進制

輸入:1010

輸出:5

18. 功能描述:判斷一個字符串中的"( )"是否配對

輸入:if(a.equals(a))

輸出:true

19. 功能描述:查找一個字符串的子字符串集

輸入:abab

輸出:a b ab ba aba bab 

 

要求實現方法:

public List<String> getChildren(String data)

{

    List<String> list = new ArrayList<String>();

    //TODO

    return list;

}

20. 功能描述:數組的循環移位,

輸入:{a,b,c},2

輸出:{b,c,a} 

 

要求實現方法:

/**

 *data :待循環數組

 *index:移動位數

 */

public String[] getChildren(String[] data,int index)

{

    //TODO

    return null;

}

21. 程序實現目標: 輸入一個字符,將字符轉換爲小寫,將其對應的ASCII值加5後,輸出結果。

程序要求:若其值加5後的字符值大於'z',將其轉換成從a開始的字符。

輸入:‘A’

輸出:‘f’

22. 要求:將一個二維數組進行逆序,逆序後全部的元素行列不定,進行隨機排列

①先把數組每一行逆序

②再把逆序後每一行進行隨機排列

如:{{4,3,32,5},{1,2,3,4},{9,6,5,4}};

⇒4 6 5 9 
 3 4 2 1 
 5 4 32 3

23. 根據輸入m數據,找出str的m個字符的全部字符串

例如"abc" m=2

"ab" "ac" "bc"

"abcd" m=3

"abc" "acd" "bcd" "abd"

public ArrayList<String> perenum(String str,int m)

{

 

   return null;

}

24. 分解質因數

eg:輸入 28

輸出 2*2*7

25.n個長度的字符串中取m個長度的組合

26. 二維數組轉置

例:1 2 3

    4 5 6

轉置

    1 4

    2 5

   3 6

27. 功能描述:輸入字符串,將該字符串中數字放到非數字的後面,並保持原有順序不變。

例如:h3a2p0p1y----------happy3201

public String  childStr(String inputStr){

}

28. 輸入一個身份證號碼(15位和18位)和一個年份,計算如今的年齡(忽略非法參數)

eg:610618199001020065  2011

輸出:21

29. 輸入一個字符串,若是是小寫則轉換成相應的大寫字母的後五位,若是是VWXYZ則轉換成abcde,其餘的都不變,例如:「aDsR154+-/.」則應該輸出爲「FDXR154+-/.」

30. 字母轉換(完成給出類中的方法):

要求:

 一、傳入大寫字母,返回小寫字母。

 二、返回的小寫字母應爲該大寫字母對應的小寫字母后第五個小寫字母,

  例:出入'A',則返回f.

 三、若按2中的要求返回的字母超過z,則超過1返回a,超過2返回b,依次類推;

public class test{

  public static void main(String[] args)

 {

   //可寫測試代碼  

 }

   //須要完成的方法

  public char upperToLower(char upperCase)

  {

     //完成代碼

  }

}

31. 刪除一個字符串裏出現次數最多的子字符串

若是有多個出現次數相同的而且出現次數最多則將多個所有刪除好比abbccd獲得結果 ad

32. 判斷字符串首字母就大寫,非首字母小寫

一、如輸入 Good 返回 TRUE

二、過程當中不須要輸出任何IO流。

33. 將一個英文語句以單詞爲單位逆序排放。例如「I am a boy」,逆序排放後爲「boy a am I」

全部單詞之間用一個空格隔開,語句中除了英文字母外,再也不包含其餘字符

接口說明

/**

 * 反轉句子

 * 

 * @param sentence 原句子

 * @return 反轉後的句子

 */

public String reverse(String sentence);

34. 題目背景

寫出一個程序,接受一個浮點數值,輸出該數值的近似整數值。若是小數點後數值大於等於5,向上取整;小於5,則向下取整

接口

int round(double d)

舉例

-4.5 四捨五入的結果是-4

4.4 四捨五入的結果是4

35.數列求和

編寫程序,輸入一個正整數n,求下列算式的值。要求定義和調用函數fact(k)計算k的階乘,函數返回值的類型是double。

1+1/2!+ .... +1/n!

輸出保留5位小數。

下面是一些合理的表達式的例子:

Input         5                

Output      1.71667   

36. 計算整數各個數位之和 

描述: 要求使用遞歸實現,計算整數各個數位之和。

舉例: 123 --> 1+2+3 = 6

運行時間限制: 無限制 

內存限制: 無限制 

輸入: 0xff ff ff ff之內的整數

輸出: NA

樣例輸入: 123 

樣例輸出: 6 

37.提取不重複的整數 

描述: 輸入一個int型32位整數,按照從右向左的閱讀順序,返回一個不含重複數字的新的整數。

運行時間限制: 10 Sec 

內存限制: 無限制 

輸入: 整數,如9876673

注意:

一、整數最後的0,請忽略,例如:輸入1750,輸出:571

二、負數,保留'-'在前面,例如:輸入-175,輸出:-571

輸出: 整數,如37689

樣例輸入: 9876673 

樣例輸出: 37689  

相關文章
相關標籤/搜索