算法1. 双指针法-移动零

题目描述:

解题:

我们可以先定义两个指针,一个快指针(cur),一个慢指针(dest),让快指针指向这个数组的下标为0的位置,慢指针指向数组下标为-1的位置。让快指针(cur)先走,当 cur 遇到零元素时继续向后走,当 cur 遇到非零元素时,先 dest 走一步,再让cur位置的元素和dest位置的元素进行交换。当 cur 等于数组元素个数时完成循环。

总结:

遇到一个问题时,先想清楚使用什么样的方式进行解答(不是先上来就要开始想代码如何写),然后一定要进行画图(重要),先在画图中总结最普遍的方法,然后再寻找特殊的情况。最后进行代码的编写。

相关推荐
CQU_JIAKE2 小时前
11.1[A]
算法
小郎君6582 小时前
(六)el-cascader 的展示值为什么不能直接 join:emitPath、路径还原与多选去重
vue.js·算法
悠仁さん3 小时前
【C++】set map 使用
java·前端·c++
艾莉丝努力练剑3 小时前
【AI大模型接入SDK】ChatServer问题修复
c++·学习·ai·大模型·sdk
扶尔魔ocy3 小时前
【QT C++】常用设计模式
c++·设计模式
晚风予卿云月4 小时前
【C++高并发内存池】 2.ThreadCache设计
开发语言·c++·高并发内存池·tcmalloc
郝学胜-神的一滴4 小时前
游戏设计:原型与开发 19:U3D工位布置与性格说明书
人工智能·算法·unity·unreal engine·游戏策划·游戏设计
東隅已逝,桑榆非晚4 小时前
红黑树:从概念到实现
数据结构·c++·笔记·学习
艾莉丝努力练剑5 小时前
【AI大模型接入SDK】ChatServer接口测试
网络·c++·人工智能·学习·ai·大模型·sdk