微软的一道网红Java面试题

Posted sum-41

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微软的一道网红Java面试题相关的知识,希望对你有一定的参考价值。

技术图片

题目:

给定一个int类型数组:int[] array = new int[]12, 2, 3, 3, 34, 56, 77, 432

让该数组的每个位置上的值去除以首位置的元素,得到的结果,作为该位置上的新值,

遍历新的数组

典型错误答案:

    public static void main(String[] args) 
        int[] array = new int[]12, 2, 3, 3, 34, 56, 77, 432;

        for (int i = 0; i < array.length; i++) 
            array[i] = array[i] / array[0];
            // 注意这里,遍历第一次后,首位置元素的值变成了1,不再是12
        

        for (int i = 0; i < array.length; i++) 
            System.out.println(array[i]);
        
    

正确答案一:

    public static void main(String[] args) 
        int[] array = new int[]12, 2, 3, 3, 34, 56, 77, 432;

        int temp = array[0];
        for (int i = 0; i < array.length; i++) 
            array[i] = array[i] / temp;
        

        for (int i = 0; i < array.length; i++) 
            System.out.println(array[i]);
        
    

正确答案二:

    public static void main(String[] args) 
        int[] array = new int[]12, 2, 3, 3, 34, 56, 77, 432;

        for (int i = array.length - 1; i >= 0; i--) 
            array[i] = array[i] / array[0];
        

        for (int i = 0; i < array.length; i++) 
            System.out.println(array[i]);
        
    

技术图片

以上是关于微软的一道网红Java面试题的主要内容,如果未能解决你的问题,请参考以下文章

「每天一道面试题」Java中的阻塞队列都有哪些

一道微软面试题:“半”有序数组如何进行二分查找?

历史上最简单的一道Java面试题,但无人能通过

一道。。Java基础面试题

从一道面试题深入了解java虚拟机内存结构

Java基础中的一道面试题