LeetCode初级-12-移动0
Posted 咖啡壶子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode初级-12-移动0相关的知识,希望对你有一定的参考价值。
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
示例: 输入: [0,1,0,3,12]
输出: [1,3,12,0,0]
说明: 必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。
package day20210815;
public class 移动0 {
public static void main(String[]args) {
int []nums1= {0,1,0,3,12};
moveZeroes(nums1);
for(int num:nums1) {
System.out.println(num);
}
}
public static void moveZeroes(int []nums1) {
int left=0,right=0;
while(right<nums1.length) {
if(nums1[right]!=0) {
swap(nums1,left,right);
left++;
}
right++;
}
}
public static void swap(int []nums1,int left,int right) {
int temp=0;
temp=nums1[right];
nums1[right]=nums1[left];
nums1[left]=temp;
}
}
以上是关于LeetCode初级-12-移动0的主要内容,如果未能解决你的问题,请参考以下文章