Java面试核心知识点笔记
其中囊括了JVM、锁、并发、Java反射、Spring原理、微服务、Zookeeper、数据库、数据结构等大量知识点。
Java中高级面试高频考点整理
最后分享Java进阶学习及面试必备的视频教学
0 <= nums.length <= 50000
1 <= nums[i] <= 10000
既然分成两部分,毫无疑问用双指针,快慢指针也可以。
-
如果左指针指向偶数,右指针指向奇数,则交换元素位置
-
如果左指针指向奇数,右指针指向偶数,则继续移动指针,不交换位置。
所有
leetcode
代码已同步至github
欢迎
star
/**
- @author yitiaoIT
*/
class Solution {
public int[] exchange(int[] nums) {
int l = 0, r = nums.length - 1;
while (l < r){
if(nums[l] % 2 == 0 && nums[r] % 2 == 1)
swap(nums,l++,r–);
if(nums[l] % 2 == 1) l++;
if(nums[r] % 2 == 0) r–;
}
return nums;
}
private void swap(int[] nums, int index1, int index2){
int temp = nums[index1];
nums[index1] = nums[index2];
nums[index2] = temp;
}
}
复杂度分析
- 时间复杂度:O(N)
⭐今天是坚持刷题更文的第41/100天
⭐各位的点赞、关注、收藏、评论、订阅就是一条创作的最大动力
总结
蚂蚁面试比较重视基础,所以Java那些基本功一定要扎实。蚂蚁的工作环境还是挺赞的,因为我面的是稳定性保障部门,还有许多单独的小组,什么三年1班,很有青春的感觉。面试官基本水平都比较高,基本都P7以上,除了基础还问了不少架构设计方面的问题,收获还是挺大的。
经历这次面试我还通过一些渠道发现了需要大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。
ps://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**