📅  最后修改于: 2023-12-03 14:54:22.343000             🧑  作者: Mango
此次面试是在校内举行的惠普研发部门面试,主要考察了我的编程功底和问题解决能力。
Java中的多态是指一个对象能够具备多种不同形态的能力。这种能力使得一个类的实例对象可以被当作子类的实例对象来使用,从而可以在程序中统一处理不同的对象。主要包括重载多态和重写多态两种形式。
public class Singleton {
private static Singleton instance;
private Singleton() {}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
//单利模式的作用是保证在应用程序的生命周期内,只有一个对象可以被创建和访问。这种方式可以有效地减少内存开销,提高程序的运行效率。
public class QuickSort {
public void quickSort(int[] nums, int left, int right) {
if (left >= right) {
return;
}
int pivot = nums[left], i = left + 1, j = right;
while (i <= j) {
if (nums[i] < pivot) {
i++;
} else if (nums[j] >= pivot) {
j--;
} else {
swap(nums, i++, j--);
}
}
swap(nums, left, j);
quickSort(nums, left, j - 1);
quickSort(nums, j + 1, right);
}
private void swap(int[] nums, int i, int j) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
//快速排序的作用是对一段无序的数列进行排序。其时间复杂度为O(nlogn),是一种高效的排序方法。
此次面试考察了我的Java编程能力和算法基础,让我更加深入地理解了多态和单例模式的概念,同时也巩固了我的快速排序的实现。通过此次面试,我也更加清楚地认识到自己的不足,会在今后的学习中加强相关知识的学习和实践。