题目:
写一个方法,要求参数int类型,如:传入一个12345,返回结果54321。
面试的时候遇到这个题,还有个要求,是方法体内的代码不能超过8行,而且还要用递归。
public static void main(String[] args) {
System.out.println(f(12345, 0));
}
public static int f(int i, int j) {
return i < 10 ? f(i / 10, (i % 10 + j) * 10) : i + j;
}
题目:
给定一个有序数组,统计其中不重复的绝对值的个数。(这个数组可能很长)
例如 int[] A = new int[]{-5, -3, -1, 0, 3, 6}; 不重复的绝对值有 5,3,-1,0, 6。 所以结果为5。
public static void main(String[] args) {
int arr[] = new int[] { -20, -18, -16, -4, -1, 1,5, 8, 9, 18, 20};
System.out.println(getCount(arr));
}
public static int getCount(int[] arr) {
int length = arr.length;
int count = getIndex(arr, 0, length, 0) + 1;// 得到<=0的数据个数
if (count == 1 || count == length)
return arr.length;
int i = count; // 得到第一个>0的数的数组下标
while (i < length) {
if (arr[i] + arr[0] > 0)
return count + length-i;
if (arr[getIndex(arr, 0, count, -arr[i])] + arr[i] != 0) {
count++;
}
i++;
}
return count;
}
/**
* 获得数组arr中最后一个数据小于等于k的数组下标
*
* @param arr
* @param i
* 左指针
* @param j
* 右指针
* @param k
* 边界
* @return
*/
public static int getIndex(int[] arr, int i, int j, int k) {
while (i != j - 1) {
int x = (i + j) / 2;
if (arr[x] > k)
j = x;
else
i = x;
}
return i;
}
题目:
有三个int, a, b, k . 其中 0<=a<=b, k>0. 统计a ,b 之间能被k整除的数的个数(含 a,b )。
例如a =6 , b = 11, k =2, 结果应该为3, 因为 6,8, 10 三个数能被2整除。
public static void main(String[] args) {
System.out.println(f(0, 9, 3));
}
public static int f(int a, int b, int k) {
return a%k==0?(a % k + b - a) / k + 1:(a % k + b - a) / k;
}
分享到:
相关推荐
java中级面试题整理,自身经验遇到的问题整理,希望对您有帮助
Java重点面试题 – 针对java面试过程中经常遇到的一些试题进行总结.docx JAVA面试基础知识点总结.docx Java面试笔记.docx 写出正则表达式,从一个字符串中提取链接地址.docx 出现几率最高和覆盖范围最广的一套经典...
根据给定的信息,我们可以整理出一系列与C++相关的面试题及知识点解析,下面将逐一进行详细阐述。 ### C++ 面试题知识点解析 #### 1. 预处理器指令 预处理器是编译器执行的第一步,在实际编译之前处理源代码。预...
数据库实战把一些工作中遇到的以及在网上找到的面试题进行了sql语句自己编辑以及测试.zip数据库实战把一些工作中遇到的以及在网上找到的面试题进行了sql语句自己编辑以及测试.zip数据库实战把一些工作中遇到的以及在...
个人秋招遇到的面试题,有答案;H5C3,js,es6,到vue,http,计网,还有HR面试问题;希望能帮到参加秋招春招的小伙伴
这份"实施工程师面试题(有答案).rar"压缩包文件,显然是为那些有意从事或正在寻求实施工程师职位的人准备的。它包含了可能在面试中遇到的问题以及相应的答案,帮助求职者更好地准备面试。 面试题通常会涵盖以下几...
在面试题中,getNSString函数返回了一个临时的NSString对象,该对象在函数返回后被自动释放,因此外部使用这个指针的代码可能会遇到未定义行为。这个面试题主要考察应聘者对Objective-C内存管理的理解。 4. 关于预...
"51单片机原理面试题详解" 单片机原理面试题是IT行业中非常重要的一部分,了解单片机的原理和应用是每一个IT从业者必须掌握的知识。本文将对51单片机原理面试题进行详细的解释和分析。 单片机是将微处理器、一定...
【描述】"CCIE面试题集合..."的重复性描述暗示这个压缩包可能包含了一系列与CCIE面试相关的题目,这些题目可能是历年来的真题或者是模拟练习题,目的是帮助备考者熟悉面试流程和可能遇到的技术问题。 【标签】"CCIE...
### Java经典面试题知识点 #### Java数据结构容器 - **核心知识点**:Java集合框架,包括List、Set、Map等接口及其实现类。List接口代表有序的集合,例如ArrayList和LinkedList;Set接口代表不允许重复元素的集合,...
ABAP 100 道面试题 ABAP 是 SAP 公司开发的一种高级编程语言,用于开发 SAP 系统中的应用程序。本文总结了 ABAP 100 道面试题,涵盖了 ABAP 程序的结构、 Field Symbols 和 Field Groups、BDC 程序、Batch Input ...
`JAVA面试题集.doc`和`java面试100.doc`可能会包含更深入的Java技术问题,比如JVM工作原理、内存模型、类加载机制,以及Spring框架、MyBatis等常用开源库的使用和理解。此外,可能会涉及到数据库操作、SQL优化、设计...
在C++面试中,经常会遇到一些考察编程基础和理解的问题。...这些面试题主要考察的是C++的基础知识,包括字符处理、内存操作、错误处理以及结构体内存布局。掌握这些基本概念对于成为一名优秀的C++开发者至关重要。
【面试题 面试题 面试题】这个标题暗示了这是一个关于技术面试问题的集合,可能是由一位热心人士从不同公司的真实面试经历中收集并整理的。这可能包括编程题、系统设计题、算法题以及相关的软技能问题。对于准备IT...
为了在Java面试中脱颖而出,了解和掌握常见的面试题及答案至关重要。以下是一些关键知识点的详细解析: 1. **super()与 this()的区别** `super()`用于调用父类的构造器,确保子类实例化时父类的初始化;`this()`则...
在软件测试的面试题中,我们通常会遇到以下知识点: 1. 软件测试的目的与原则: - 目的:测试的主要目的是发现软件中的缺陷,降低产品开发风险,并记录软件运行的数据以提供决策支持。 - 原则:其中的“缺陷集群...
python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 python面试题、知识点,用于程序员应聘学习参考,提供代码+题型等资料 ...
【全国软件公司面试题集锦】是一份涵盖了广泛IT领域知识的面试题库,旨在帮助求职者准备在软件公司的面试过程中可能遇到的问题。这份资源包含了各种技术层面的问题,包括但不限于编程语言、数据结构、算法、操作系统...
BI 常见面试题汇总 BI(Business Intelligence)是企业智能化的核心组件,涉及到数据分析、报表设计、数据仓库、数据挖掘等多个方面。面试BI相关岗位时,需要具备丰富的知识储备和实践经验。以下是BI常见面试题汇总...