微软的一道网红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面试题
题目如下: public class Test { public static void main(String[] args) { int a = 10; int b = 10; // 需要在met ...
- OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)
摘要 本文先给出一个看似很简单实则有深意的Java笔试面试题,引出JDK内部的缓存. JDK内部的缓存,主要是为了提高Java程序的性能. 你能答对这道"看似简单,实则有深意"的J ...
- 一道简单的 Java 笔试题,但值得很多人反思!
前言 面试别人,对我来说是一件新奇事,以前都是别人面试我.我清楚地知道,我在的地域与公司,难以吸引到中国的一流软件人才.所以,我特地调低了期望,很少问什么深入的技术问题,只问一些广泛的.基础的.我只要 ...
- 一道百度的java面试题的几种解法
考试结束,班级平均分只拿到了年级第二,班主任于是问道:大家都知道世界第一高峰珠穆朗玛峰,有人知道世界第二高峰是什么吗?正当班主任要继续发话,只听到角落默默想起来一个声音:”乔戈里峰” 前言 文章出自: ...
- 遇到一道经典的java面试题
在文件 nameList.txt 中按下图格式存放着超过50万人的姓名与身份证信息.请使用您熟悉的编程语言(Java或C/C++)编写一段程序, 将出生日期落在1995年1月1日与1999年12月31 ...
- 一道经典的Java面试题:equals ,== 和hashcode()的区别
一句话区别:==比较的是内存地址,equals比较的是值内容 结论: 从以下三点展开: 基本数据类型.字符串.对象 对于基本数据类型:只有==,没有equals. 对于字符串:==比较的是内存地址,e ...
- 关于一道简单的Java 基础面试题的剖析: short s1=1;s1 = s1 +1会报错吗?
package common; public class ShortTypeTest { /* * @param args */ public static void main(String[] ar ...
- 一道非常棘手的 Java 面试题:i++ 是线程安全的吗
转载自 一道非常棘手的 Java 面试题:i++ 是线程安全的吗 i++ 是线程安全的吗? 相信很多中高级的 Java 面试者都遇到过这个问题,很多对这个不是很清楚的肯定是一脸蒙逼.内心肯定还在质疑 ...
- 《OD面试》Java面试题整理
一.面试考察点 1 主语言本身 2 数据库 3 算法 4 Spring/SpringMVC/MyBatis 5 项目经验 1)项目涉及到的技术点深挖: (1)考察候选人技术深度 (2)看候选人遇到问 ...
随机推荐
- 【原创】go语言学习(七)数组
目录 数组定义 二维数组 数组拷贝.传参 数组定义 1. 数组是同一类型的元素集合. var a [3]int //定义一个数组 //Go中数组下标从0开始,因此⻓长度为n的数组下标范围:[0,n-1 ...
- 二分算法题目训练(三)——Anton and Making Potions详解
codeforces734C——Anton and Making Potions详解 Anton and Making Potions 题目描述(google翻译) 安东正在玩一个非常有趣的电脑游戏, ...
- Apache Flink - Batch(DataSet API)
Flink DataSet API编程指南: Flink中的DataSet程序是实现数据集转换的常规程序(例如,过滤,映射,连接,分组).数据集最初是从某些来源创建的(例如,通过读取文件或从本地集合创 ...
- idea 2019激活码
9MWZD5CC4E-eyJsaWNlbnNlSWQiOiI5TVdaRDVDQzRFIiwibGljZW5zZWVOYW1lIjoiMjAxNzY1MDYxQGNxdS5lZHUuY24gLiIsI ...
- [Ubuntu] A start job is running for...interfaces
CPU:RK3288 系统:Linux 移植 Ubuntu 16.04 到嵌入式平台,如果以太网有问题,在这里会耗时大约5分钟 开机后可以修改 Ubuntu 配置来缩短时间 打开下面的文件,可以看到最 ...
- Macbook上打开多个终端的方法
方法有如下两种 1.首先是的焦点在终端上(使用鼠标点击下终端).然后使用快捷键command+N 即可得到另一个终端界面. (如果现在光标的焦点在浏览器上,那么就是新打开一个浏览器窗口) 2.同样,光 ...
- OpenJudge计算概论-分数求和
/*====================================================== 1006:分数求和 总时间限制: 1000ms 内存限制: 65536kB 描述 输入 ...
- OpenJudge计算概论-分离整数的各个数位
/*================================================================= 分离整数的各个数位 总时间限制: 1000ms 内存限制: 65 ...
- H5内嵌原生app
前言 其实我们不管是从ios还是安卓都可以看出 原生app能内嵌H5的原因是因为有了webview这个app内嵌浏览器视图,从而使得我们可以开发html然后加载到app中(原理几乎跟pc端请求.加载. ...
- PAT 甲级 1049 Counting Ones (30 分)(找规律,较难,想到了一点但没有深入考虑嫌麻烦)***
1049 Counting Ones (30 分) The task is simple: given any positive integer N, you are supposed to co ...