当前位置: 首页 > wzjs >正文

百度搜不到的网站广东省农业农村厅副厅长

百度搜不到的网站,广东省农业农村厅副厅长,茂名建站价格,免费ppt模板下载手机题目如下 本道题采用双指针的思想完成&#xff0c;可以使用快慢指针的思想&#xff0c;通过快指针遍历数组找出数组中的非零元素&#xff0c;用慢指针来维护有效值 可以先根据题目的条件手搓出来一个测试&#xff0c;方便理解 #include<iostream> #include<algorithm…

题目如下

在这里插入图片描述
本道题采用双指针的思想完成,可以使用快慢指针的思想,通过快指针遍历数组找出数组中的非零元素,用慢指针来维护有效值
可以先根据题目的条件手搓出来一个测试,方便理解

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
void moveZeroes(vector<int>& nums) {//方法一:快慢指针int fast=0,slow=0;for(fast=0;fast<nums.size();fast++){if(nums[fast]!=0){nums[slow++]=nums[fast];}}cout<<"fast "<<fast<<'\n';cout<<"slow "<<slow<<'\n';}
int main()
{vector<int>v(5);for(int i=0;i<5;i++){int x;cin>>x;v[i]=x;}moveZeroes(v);for(int i=0;i<5;i++){cout<<v[i]<<" ";}return 0;
}

例如题目的案例一:0 1 0 3 12
先自己模拟一遍,刚开始 fastslow指针都指向 0 号索引,开始向后找,一旦发现不为 0的元素,就将其填在slow索引处,第一次发生在索引为1的时候,经过操作,得到了1 1 0 3 12此时slow进行自增指向索引1,第二次发生在索引为3的时候,经过操作得到了1 3 0 3 12,第三次发生在索引为4的时候,经过操作得到了1 3 12 3 12,最终遍历完毕,fast最后指向了索引5,slow最后指向了索引3
验证一下:
在这里插入图片描述
没错是这样的,这样就找到了数组中所有不为0的数字,且由slow来维护。最后我们只需要将slow-fast之间的数字全部变为0就可以了

		//就相当于slow到数组的最后for(int i=slow;i<nums.size();i++){nums[i]=0;}//两种都可以for(int i=slow;i<fast;i++){nums[i]=0;}

AC代码:

class Solution {
public:void moveZeroes(vector<int>& nums) {//方法一:快慢指针int fast=0,slow=0;for(fast=0;fast<nums.size();fast++){if(nums[fast]!=0){nums[slow++]=nums[fast];}}for(int i=slow;i<fast;i++){nums[i]=0;}}
};

还有另外一种方法:
定义 l 和 r 指针,通过 r 指针遍历数组,找到不为 0 的元素,依次交换 还是以0 1 0 3 12为例子:
刚开始 l 和 r都指向0号索引,r向前遍历,当找到不为0的数字时和索引为 l 的数字进行交换,第一次找到了1l(0)交换得到了1 0 0 3 12此时l 自增->(1),第二次找到了3进行交换,得到了1 3 0 0 12,l自增->(2),第三次找到了12,进行交换得到了1 3 12 0 0即是最终答案,此时l = 3 r= 5
在这里插入图片描述
最终也可以得到正确答案:

AC代码:

class Solution {
public:void moveZeroes(vector<int>& nums) {int l=0,r=0;while(r<nums.size()){if(nums[r]!=0){swap(nums[l],nums[r]);l++;}r++;}}
};
http://www.dtcms.com/wzjs/810082.html

相关文章:

  • 乔拓云智能建站免费注册广州网站建设 全包
  • 望城经开区建设开发公司门户网站现货黄金什么网站可以做直播
  • 滨湖区建设局官方网站做网站商城需要什么条件
  • 现在的网站开发用什么技术wordpress识图
  • wordpress背景偏暗谷歌优化教程
  • 网站策划书10个点怎么写规划设计导航网站
  • 共同建设网站心得页面跳转的方法
  • 交友类网站功能建设思路多种东莞微信网站建设
  • 网站建设 诺德中心如何在手机上开自己的网站
  • 网站搭建本地环境asp access网站开发实例精讲
  • 公司网站 域名 cn com专门看广告赚钱的app
  • 轴承外贸网站怎么做包括哪些内容
  • 有哪些好用的网站网站怎么接广告赚钱
  • 行政审批网站建设规范国外优秀网站设计
  • 商城微网站建设织梦网站选空间
  • 做一套公司网站费用起域名网站
  • wordpress如何搭建网站哈尔滨市公共资源交易中心
  • 服务器添加网站珠海网站建站
  • 有空间与域名 怎么做网站华文细黑做网站有版权吗
  • 安卓网站客户端制作网站建设方案有关内容
  • 出名的网站建设软件如何自己开网店做网店
  • 网站建设伍金手指下拉8h5网站设计
  • opencart zencart网站建设做公司网站 哪个程序用的多
  • 哪个网站可以做销售记录仪做职业背景调查的网站
  • 建设银行官方网站链接战略咨询公司
  • 网站注册查询网站建设依据什么法律
  • 网站响应时间长阿里云做网站送服务器
  • 网站建设初步课程介绍平板网站开发环境
  • 专门查大学的网站凡科网站做网站多少钱
  • 网站建设河北石家庄重庆是哪个省哪个市的