admin 管理员组文章数量: 887021
2023年12月19日发(作者:代码搞笑下载)
java 基础算法题
Java基础算法题是面试中经常出现的一个考察点,以下是一些常见的Java基础算法题及其解答。
1. 翻转字符串
题目:给定一个字符串,将其进行翻转。
例如:输入s = "hello",输出"olleh"。
解答:可以借助StringBuilder中的reverse()方法进行字符串翻转操作。
代码如下:
```
public static String reverseString(String s) {
StringBuilder sb = new StringBuilder(s);
return e().toString();
}
```
2. 统计字符串中某一字符的出现次数
题目:给定一个字符串和一个字符,统计该字符在字符串中出现的次数。
例如:输入s = "hello",c = 'l',输出2。
解答:可以遍历字符串中的每一个字符,统计该字符在字符串中出现的次数。
代码如下:
```
public static int countChar(String s, char c) {
int count = 0;
for (int i = 0; i < (); i++) {
if ((i) == c) {
count++;
}
}
return count;
}
```
3. 求斐波那契数列的第n项
题目:求斐波那契数列的第n项,斐波那契数列的定义如下:
F(0) = 0, F(1) = 1
F(n) = F(n-1) + F(n-2) (n>=2)
例如:输入n = 5,输出5。
解答:可以使用递归的方式求解,但是递归效率较低,当n较大时会出现栈溢出的情况。可以采用循环的方式进行求解。
代码如下:
```
public static int fibonacci(int n) {
if (n < 2) {
return n;
}
int a = 0, b = 1;
for (int i = 2; i <= n; i++) {
int c = a + b;
a = b;
b = c;
}
return b;
}
```
4. 判断一个数是否为素数
题目:给定一个整数,判断它是否为素数。
例如:输入n = 7,输出true。
解答:可以使用循环遍历2到n-1的所有整数,判断该数是否能被整除。如果能被整除,则该数不是素数。
代码如下:
```
public static boolean isPrime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i < n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
```
5. 寻找数组中的最大值和最小值
题目:给定一个整型数组,寻找其中的最大值和最小值。
例如:输入arr = {3, 1, 6, 2, 8, 4},输出最大值8和最小值1。
解答:可以使用循环遍历该数组,记录其中的最大值和最小值。
版权声明:本文标题:java 基础算法题 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1702938555h436676.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论