📅  最后修改于: 2023-12-03 15:33:06.401000             🧑  作者: Mango
最近我有幸参加了Newzera的面试,以下是我的面试经历。
面试分为两个部分。第一个部分是在线笔试,涵盖了算法、数据结构、数据库等内容,时间为90分钟。第二个部分是视频面试,采用英文交流,时长为60分钟。
class LRUCache {
Map<Integer, Integer> map;
Deque<Integer> queue;
int capacity;
public LRUCache(int capacity) {
map = new HashMap<>();
queue = new LinkedList<>();
this.capacity = capacity;
}
public int get(int key) {
if (map.containsKey(key)) {
queue.remove(key);
queue.offer(key);
return map.get(key);
} else {
return -1;
}
}
public void put(int key, int value) {
if (map.containsKey(key)) {
queue.remove(key);
}
while (queue.size() >= capacity) {
int lru = queue.poll();
map.remove(lru);
}
map.put(key, value);
queue.offer(key);
}
}
public int maxLenArithmeticSeq(int[] nums) {
int n = nums.length;
if (n <= 2) {
return n;
}
int[][] dp = new int[n][n];
int res = 2;
for (int j = 0; j < n; j++) {
int i = j - 1, k = j + 1;
while (i >= 0 && k < n) {
if (nums[i] + nums[k] < 2 * nums[j]) {
k++;
} else if (nums[i] + nums[k] > 2 * nums[j]) {
i--;
} else {
dp[i][j] = dp[j][k] + 1;
res = Math.max(res, dp[i][j] + 2);
i--;
k++;
}
}
}
return res;
}
请介绍一下自己的项目中的技术难点。 我向面试官介绍了我曾经参与的一个医疗信息管理系统的开发项目,主要介绍了权限管理、数据统计、嵌套表格等方面的技术难点,以及我的解决方案。
请问你觉得工作中最重要的技能是什么?并简单举例说明。 我认为工作中最重要的技能是沟通能力。在我的经验中,一个好的沟通者可以更好地将自己的想法传达给他人,协调不同团队之间的工作,提高项目完成的效率。
这次面试让我感觉比较充实,面试官也给了我很好的反馈和建议。我觉得不管是否被录用,这次面试对我都是一个很好的学习和成长机会。