日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软通动力华为java机考题库_华为机考笔试刷题-java-1

發布時間:2025/3/12 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软通动力华为java机考题库_华为机考笔试刷题-java-1 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題庫來源

計算字符個數

寫出一個程序,接受一個由字母和數字組成的字符串,和一個字符,然后輸出輸入字符串中含有該字符的個數。不區分大小寫。

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

while (sc.hasNextLine()) {

char[] text = sc.nextLine().toLowerCase().toCharArray();

char targetChar = sc.nextLine().toLowerCase().toCharArray()[0];

int count=0;

for (Character t : text) {

if (t==targetChar) {

count=count+1;

}

}

System.out.println(count);

}

}

明明的隨機數

他先用計算機生成了N個1到1000之間的隨機整數(N≤1000),對于其中重復的數字,只保留一個,把其余相同的數去掉,不同的數對應著不同的學生的學號。

再把這些數從小到大排序,按照排好的順序去找同學做調查。

TreeSet與HashSet

HashSet不能保證元素的排列列順序,TreeSet是SortedSet接?口的唯一實現類,可以確保集合

元素處于排序狀態

HashSet底層?用的是哈希表,TreeSet采?用的數據結構是紅黑樹(紅黑樹是一種特定類型的二叉樹)

HashSet中元素可以是null,但只能有一個,TreeSet不不允許放入null

一般使用HashSet,如果需要排序的功能時,才使?用TreeSet(性能原因)

import java.util.*;

public class Main

{

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

while(sc.hasNext()){

TreeSet set=new TreeSet(new Comparator() {

@Override

public int compare(Integer o1, Integer o2) {

return o1.compareTo(o2);

}

});

int n=sc.nextInt();

if(n>0){

for(int i=0;i

set.add(sc.nextInt());

}

}

for(Integer i:set){

System.out.println(i);

}

}

}

}

字符串數組

?連續輸入字符串,請按長度為8拆分每個字符串后輸出到新的字符串數組;

?長度不是8整數倍的字符串請在后面補數字0,空字符串不處理。

這題的重點在于要將長度不是8的整數倍字符串補齊后循環輸出,而不是輸出同時補齊(太麻煩并且)。

public class Main {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

while (sc.hasNext()) {

String line = sc.nextLine();

int lineLen = line.length();

if (lineLen % 8 == 0) {

for (int i = 0; i < lineLen; i = i + 8) {

System.out.println(line.substring(i, i + 8));

}

} else {

int lenMod = 8 - lineLen % 8;

for (int i = 0; i < lenMod; i++) {

line = line + 0;

}

if (lineLen < 8) {

System.out.println(line);

} else {

for (int j = 0; j < lineLen; j = j + 8) {

System.out.println(line.substring(j, j + 8));

}

}

}

}

}

}

進制轉換

寫出一個程序,接受一個十六進制的數,輸出該數值的十進制表示。(多組同時輸入 )

public class Main {

public static void main(String[] args) throws IOException {

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

String line = null;

while ((line = br.readLine()) != null) {

System.out.println(Long.parseLong(line.substring(2), 16));

}

}

}

輸出質因子

功能:輸入一個正整數,按照從小到大的順序輸出它的所有質因子(重復的也要列舉)(如180的質因子為2 2 3 3 5 )

最后一個數后面也要有空格

import java.util.Scanner;

public class Main

{

public static void main(String[] args)

{

Scanner scanner = new Scanner(System.in);

long number = 0;

while(scanner.hasNextLong())

{

number = scanner.nextLong();

isPrimerFactors(number);

}

}

private static void isPrimerFactors(long num)

{

long number = num;

while(number != 1)

{

for(int i = 2; i <= number ;i++)

{

if(number % i == 0)

{

number /= i;

System.out.print(i + " ");

break;

}

}

}

}

}

取近似值

java中的三種取整函數:floor,ceil,round

寫出一個程序,接受一個正浮點數值,輸出該數值的近似整數值。如果小數點后數值大于等于5,向上取整;小于5,則向下取整。

import java.util.*;

public class Main

{

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

float num=sc.nextFloat();

System.out.println(Math.round(num));

}

}

合并表記錄(TreeMap)

數據表記錄包含表索引和數值(int范圍的整數),請對表索引相同的記錄進行合并,

即將相同索引的數值進行求和運算,輸出按照key值升序進行輸出。

public class Main{

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int num=sc.nextInt();

TreeMap map=new TreeMap<>();

while(num>0){

int key=sc.nextInt();

int value=sc.nextInt();

if(!map.containsKey(key)){

map.put(key,value);

}else{

map.put(key,map.get(key)+value);

}

num--;

}

Iterator iterator=map.entrySet().iterator();

while(iterator.hasNext()){

Map.Entry en = (Map.Entry)iterator.next();

Integer key=en.getKey();

Integer value=en.getValue();

System.out.println(key+" "+value);

}

}

}

提取不重復的整數

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

① HashSet的輸出順序是不確定的,但是它的速度最快;

② TreeSet輸出順序是升序排列的,相當于C++中的set,個人比較喜歡這種;

③ LinkedHashSet輸出順序是確定的,就是插入時的順序。

import java.util.*;

/**

* @Author hwj

* @Date 2020/8/15 8:37

* @Desc:

**/

public class Main{

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

String[] number=sc.nextLine().split("");

int numLen=number.length;

LinkedHashSet set=new LinkedHashSet<>();

for(int i=numLen-1;i>=0;i--){

if(!set.contains(Integer.parseInt(number[i]))) {

set.add(Integer.parseInt(number[i]));

}

}

Iterator iterator= set.iterator();

while(iterator.hasNext()){

System.out.print(iterator.next());

}

}

}

句子逆序

將一個英文語句以單詞為單位逆序排放。

例如“I am a boy”,逆序排放后為“boy a am I”

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

String sentence = sc.nextLine();

String strReverse=reverse(sentence);

System.out.println(strReverse);

}

public static String reverse(String sentence){

String[] str=sentence.split(" ");

int strLen=str.length;

String str2=str[strLen-1];

for(int i=strLen-2;i>=0;i--){

str2=str2+" "+str[i];

}

return str2;

}

字串的連接最長路徑查找

給定n個字符串,請對n個字符串按照字典序排列。

public class Main {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int n=sc.nextInt();

int num=n;

TreeSet set=new TreeSet<>();

while(num>=0){

set.add(sc.nextLine());

num--;

}

Iterator iterator = set.iterator();

while(iterator.hasNext()){

System.out.println(iterator.next());

}

}

}

字串的連接最長路徑查找

在線編程適用: BufferedReader

集合排序 Collections.sort()

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.*;

/**

* @Author hwj

* @Date 2020/8/15 8:37

* @Desc:

**/

public class Main {

public static void main(String[] args) throws IOException {

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

int num=Integer.parseInt(br.readLine());

ArrayList arr=new ArrayList<>();

while(num>0){

num--;

arr.add(br.readLine());

}

Collections.sort(arr);

for(String s:arr){

System.out.println(s);

}

}

}

總結

以上是生活随笔為你收集整理的软通动力华为java机考题库_华为机考笔试刷题-java-1的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。