news 2026/7/19 18:26:06

4 移动0

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
4 移动0

给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。

请注意,必须在不复制数组的情况下原地对数组进行操作。

示例 1:

输入: nums = [0,1,0,3,12] 输出: [1,3,12,0,0]

示例 2:

输入: nums = [0] 输出: [0]

提示:

  • 1 <= nums.length <= 104

双指针解法

1、创建左指针和右指针,初始化都为0

2、左指针需要找到最前面为0的数字,右指针需要找到最前面不为0的数字,然后交换。

有两个关键点,无论怎么样,每次循环r指针都要往前走一格,r指针为非0时,l和r指向的数据交换,l再往前走一格。

class Solution { public: void moveZeroes(vector<int>& nums) { int n=nums.size(); if(n<2) return ; int left=0,right=0; while(1){ if(nums[right]){ std::swap(nums[left],nums[right]); left++; } right++; if(right==n) break; } } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/19 18:22:05

Palworld 服务器数据迁移深度解析:GUID冲突修复技术实现

Palworld 服务器数据迁移深度解析&#xff1a;GUID冲突修复技术实现 【免费下载链接】palworld-host-save-fix Fixes the bug which forces a player to create a new character when they already have a save. Useful for migrating maps from co-op to dedicated servers an…

作者头像 李华
网站建设 2026/7/19 18:20:57

MCP完全实战指南:基于Python搭建本地系统监控服务,让Claude/Cursor实时读取本机CPU/内存/磁盘(完整可运行代码)

本文所有代码仅用于个人本地开发调试学习&#xff0c;MCP服务可读取本机硬件、磁盘敏感信息&#xff0c;存在隐私泄露风险&#xff0c;请严格遵守以下规范&#xff1a; 仅在个人本机运行&#xff0c;禁止将MCP服务通过网络、公网分享给任何第三方&#xff1b;如需对外提供能力…

作者头像 李华
网站建设 2026/7/19 18:20:34

BOM采购平台哪个好?企业如何快速完成电子元器件配单?

随着电子产品复杂度不断提升&#xff0c;一个项目往往涉及几十甚至上千种电子元器件。对于研发企业和制造企业来说&#xff0c;如何快速完成BOM清单匹配&#xff0c;找到合适型号和稳定供应渠道&#xff0c;成为采购过程中的重要环节。因此&#xff0c;越来越多企业开始选择专业…

作者头像 李华
网站建设 2026/7/19 18:19:42

awesome-lint核心规则解析:深入理解15个关键检查点的实现原理

awesome-lint核心规则解析&#xff1a;深入理解15个关键检查点的实现原理 【免费下载链接】awesome-lint Linter for Awesome lists 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-lint 在开源项目的质量维护中&#xff0c;代码规范检查工具扮演着至关重要的角色…

作者头像 李华