华为OD两轮技术面试

瘦欲@ 提交于 2020-01-08 20:59:18

华为OD面试
1性格测试
选积极向上的选项,注意,性格测试也会挂人,我一个朋友性格测试就没过。
2机试 一道变成题目 1h 用例60%通过即可
任给一个数组,元素有20M,1T,300G之类的,其中1T=1000G,1G=1000M
按从小到大输出结果
例如:输入:3
20M
1T
300G
输出:
20M
300G
1T
我给出的代码如下(已通过100%用例):

package Huawei;

import java.util.Scanner;

/**
 * Created by xuzhenyu on 2020/1/5.
 */
public class Test {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        String[] strings = new String[n];
        for (int i = 0; i < n; i++) {
            strings[i] = scanner.next();
        }
        String[] ruslutStrs = sort(strings);
        for (int i = 0; i <ruslutStrs.length ; i++) {
            System.out.println(ruslutStrs[i]);
        }
    }
    private static String[] sort(String[] strs) {
        for (int i = 0; i < strs.length - 1; i++) {
            for (int j = 0; j < strs.length - i - 1; j++) {
                // M G T

                if (compare(strs[j], strs[j + 1])) {
                    String tem = strs[j];
                    strs[j] = strs[j+1];
                    strs[j+1] = tem;
                }
            }
        }
        return strs;
    }
    private static boolean compare(String str1, String str2){
        int str1M = turnString(str1);
        int str2M = turnString(str2);
        return str1M>str2M;
    }
    private static int turnString(String str){
        if("M".equals(String.valueOf(str.charAt(str.length()-1)))){
            return Integer.parseInt(str.substring(0,str.length()-1));
        }
        else if ("G".equals(String.valueOf(str.charAt(str.length()-1)))){
            return Integer.parseInt(str.substring(0,str.length()-1))*1000;
        }
        else if ("T".equals(String.valueOf(str.charAt(str.length()-1)))){
            return Integer.parseInt(str.substring(0,str.length()-1))*1000000;
        }
        return 0;
    };

}

3面试
3.1.两道编程题
(1) 任给一个数组,其中只有一个元素是单独出现,其他是成对出现,输出单独的元素。
例如: 输入: {2,2,1,1,4,4,7}
输出:7
(2)
在这里插入图片描述

3.2.面试问题
(1) 说一下常见的工厂模式
(2)出现full gc定位问题的步骤
(3)mysql数据库优化
(4)zookeeper的选举机制

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!