二级域名建站,苏州设计公司有哪些,东莞定制网页设计,最好的手机资源网站题目描述#xff1a;
给定一个数组 nums#xff0c;编写一个函数将所有 0 移动到数组的末尾#xff0c;同时保持非零元素的相对顺序。 请注意 #xff0c;必须在不复制数组的情况下原地对数组进行操作。 思路#xff1a; 这里的思路跟以前做过的去重复数字的思路有点像
给定一个数组 nums编写一个函数将所有 0 移动到数组的末尾同时保持非零元素的相对顺序。 请注意 必须在不复制数组的情况下原地对数组进行操作。 思路 这里的思路跟以前做过的去重复数字的思路有点像快指针也就是for循环中的i遍历元素慢指针也就是count指向存储元素得到位置当然只有当遍历的数字不是0的时候才会存储该数字至count指向的位置并且count1。完成存储的for循环之后就要把忽略掉的0给添加都末尾这一步操作就简单了具体看代码。 代码
class Solution {public void moveZeroes(int[] nums) {int count0;for(int i0;inums.length;i) {if(nums[i]!0) {nums[count]nums[i];count;}}for(int icount;inums.length;i) {nums[i]0;}}
}