淘宝网站建设需要哪些技术,北京网站建设制作开发,涟源网页设计,网站服务器排名前十题目#xff1a; 双指针想法#xff1a; i 指针在数组不为 0 的地方停留#xff0c;j 指针在每个地方停留#xff0c;依次交换 i 和 j 指针。当 i 指针遍历完所有数组元素时#xff0c;j 指针指向的元素及后面的元素都为0。 代码如下#xff1a;
C版本
class Solution …题目 双指针想法 i 指针在数组不为 0 的地方停留j 指针在每个地方停留依次交换 i 和 j 指针。当 i 指针遍历完所有数组元素时j 指针指向的元素及后面的元素都为0。 代码如下
C版本
class Solution {
public:void moveZeroes(vectorint nums) {int i0;int lennums.size();for(int j0;jlen;j){while(ilen nums[i]0){i;}if(ilen){for(int kj;klen;k){nums[k]0;}break;}swap(nums[i],nums[j]);}}
};
python版本
class Solution:def moveZeroes(self, nums: List[int]) - None:Do not return anything, modify nums in-place instead.i0len_numslen(nums)for j in range(len_nums):while ilen_nums and nums[i]0:i1if ilen_nums:for k in range(j,len_nums):nums[k]0breaknums[i],nums[j]nums[j],nums[i]i1