📅  最后修改于: 2023-12-03 15:31:32.783000             🧑  作者: Mango
Java | 套餐 | 问题1 是一个面向Java开发者提供的代码问题集合。它由一组Java编程题目组成,主要包含一些常见的Java编程问题,如数组操作、字符串处理、算法等。
Java | 套餐 | 问题1 的目的旨在提高Java程序员的编码技能,让他们更好地理解Java编程语言,并能够熟练构建Java应用程序。
Java | 套餐 | 问题1 共包含20道Java编程题目,以下为其中5个样例题目:
输出 "Hello World!" 字符串。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。
public class MergeSortedArray {
public void merge(int[] nums1, int m, int[] nums2, int n) {
int i = m - 1, j = n - 1, k = m + n - 1;
while (i >= 0 && j >= 0) {
if (nums1[i] > nums2[j]) {
nums1[k--] = nums1[i--];
} else {
nums1[k--] = nums2[j--];
}
}
while (j >= 0) {
nums1[k--] = nums2[j--];
}
}
}
编写一个函数,其作用是将输入的字符串反转过来。
public class ReverseString {
public void reverseString(char[] s) {
int i = 0, j = s.length - 1;
while (i < j) {
char temp = s[i];
s[i++] = s[j];
s[j--] = temp;
}
}
}
给定一个整数数组 nums 和一个目标值 target,在数组中找出和为目标值的两个整数。
public class TwoSum {
public int[] twoSum(int[] nums, int target) {
Map<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < nums.length; i++) {
int complement = target - nums[i];
if (map.containsKey(complement)) {
return new int[]{map.get(complement), i};
}
map.put(nums[i], i);
}
throw new IllegalArgumentException("No two sum solution");
}
}
给定一个32位有符号整数,将整数中的数字进行反转。
public class ReverseInteger {
public int reverse(int x) {
int y = 0;
while (x != 0) {
int pop = x % 10;
x /= 10;
if (y > Integer.MAX_VALUE / 10 || (y == Integer.MAX_VALUE / 10 && pop > 7)) {
return 0;
}
if (y < Integer.MIN_VALUE / 10 || (y == Integer.MIN_VALUE / 10 && pop < -8)) {
return 0;
}
y = y * 10 + pop;
}
return y;
}
}
如果您感兴趣,可以访问以下一些常用编程题库:
Java | 套餐 | 问题1 包含20个常见的Java编程问题,非常适合用于Java程序员提高编码技能。除了这些题目,您还可以访问其他一些常用的编程题库。