Hi, this is Shunchi!

  • Home

  • Tags0

  • Archives267

  • Categories0

  • Curricula

  • DSA

  • LeetCode_Notes

  • Interviews

  • General

  • Resume

283. Move Zeroes

Posted on 2020-08-27 | Edited on 2021-01-22

LeetCode

Approach: (Space Optimal, Operation Sub-Optimal) [Accepted]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// One Pass
class Solution {
public void moveZeroes(int[] nums) {
for(int idx=-1,i=0;i<nums.length;i++){
if(nums[i]!=0){
nums[++idx]=nums[i];
if(i!=idx) nums[i]=0;
}
}
}
}
// Two Pass
/*
class Solution {
public void moveZeroes(int[] nums) {
for(int idx=0,i=0;i<nums.length;i++){
if(nums[i]!=0){
nums[idx++]=nums[i];
}
}
for(int i=idx;i<nums.length;i++){
nums[i]=0;
}
}
}*/

Approach: (Optimal) [Accepted]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
private void swap(int[] nums,int i,int j){
if(i!=j){
int tmp=nums[i];
nums[i]=nums[j];
nums[j]=tmp;
}
}

public void moveZeroes(int[] nums) {
for(int idx=0,i=0;i<nums.length;i++){
if(nums[i]!=0){
swap(nums,idx++,i);
}
}
}
}

<1…242526…267>
ShunchiZhou

ShunchiZhou

267 posts
RSS
GitHub E-Mail Gitbook Linkedin
© 2024 ShunchiZhou
Powered by Hexo v5.4.0
|
0%