LeetCode(剑指 Offer)- 21. 调整数组顺序使奇数位于偶数前面
题目大意:略
解题思路:略
相关企业
字节跳动
AC 代码
Java
// 解决方案(1)class Solution { public int[] exchange(int[] nums) { int len = nums.length; List l1 = new ArrayList<>(); List l2 = new ArrayList<>(); for (int i = 0; i < len; i++) { if (nums[i] % 2 != 0) { l1.add(nums[i]); } else { l2.add(nums[i]); } } l1.addAll(l2); int[] rs = new int[len]; for (int i = 0; i < l1.size(); i++) { rs[i] = l1.get(i); } return rs; }}// 解决方案(2)class Solution { public int[] exchange(int[] nums) { int i = 0, j = nums.length - 1, tmp; while(i < j) { while(i < j && (nums[i] & 1) == 1) i++; while(i < j && (nums[j] & 1) == 0) j--; tmp = nums[i]; nums[i] = nums[j]; nums[j] = tmp; } return nums; }}
C++
class Solution {public: vector exchange(vector& nums) { int i = 0, j = nums.size() - 1; while (i < j) { while(i < j && (nums[i] & 1) == 1) i++; while(i < j && (nums[j] & 1) == 0) j--; swap(nums[i], nums[j]); } return nums; }};
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~