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

做百度网站找谁谷歌搜索引擎入口手机版

做百度网站找谁,谷歌搜索引擎入口手机版,直播类网站开发,柳州做网站那家好题目: 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,1,0,3,12] 输出: [1,3,12,0,0] 示例 2: 输…

题目:

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

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

示例 1:

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

示例 2:

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

提示:

  • 1 <= nums.length <= 104
  • -231 <= nums[i] <= 231 - 1

解答:

思路:

首先我想到的就是swap进行交换,因为数组元素的顺序不能改变,只能让零移动全部到后面。

换个想法,其实就是想让非零元素全部按原来的顺序全部排列在数组前,那么就可以直接一个for循环遍历,只要是非零元素就进行swap,遍历一遍就会将非零元素置换到前面。

元素是零,就会用res标记下标,与下一个非零元素进行swap,这样遍历一遍,零元素会慢慢全部排序在后面,非零元素排列在前面。

代码如下:

class Solution {
public:void moveZeroes(vector<int>& nums) {int res=0;for(auto & it : nums){if(it!=0){          //如果数组中,当前元素不为0,就和后一个元素交换swap(it,nums[res]);res++;}}}
};
// 0 1 0 3 12 res=0 
// 1 0 0 3 12 res=1 
// 1 3 0 0 12 res=2 
// 1 3 0 0 12 res=3 
// 1 3 12 0 0 res=4 

http://www.dtcms.com/wzjs/482241.html

相关文章:

  • 网站设计要注意什么互联网推广怎么找渠道
  • 天津网站制作公司电话中国营销网官网
  • 成都网站建设seo优化互动营销名词解释
  • 徐州做网站的哪个好优化科技
  • 设计学网站做网络营销推广
  • 如何做建议的网站无线新闻台直播app下载
  • 设计好的网站百度排名推广
  • 政府信息公开和网站建设工作seo学徒
  • 灵动网站建设网站推广的方法有哪几种
  • 响应式网站建设服务提供商百度指数搜索热度
  • 阿里云企航域名购买方式长春seo公司哪家好
  • 网站控制台seo工作前景如何
  • 简易 建站国内好用的搜索引擎
  • ps网站首页效果图实例seo搜索引擎优化主要做什么
  • 香港公司网站内地主机2022年十大网络流行语发布
  • 新手如何建站石家庄网站建设就找
  • 哪家网站做民宿好打开百度搜索网站
  • 澳门网站开发广告推广代运营公司
  • 外国人做的篆字网站百度应用宝
  • 中国设计网简介索引擎优化 seo
  • html5 网站布局应用教程电商培训
  • 商城网站建设需求如何制作网站链接
  • 网站备案变更 委托书黑帽seo论坛
  • 衡阳建设网站公司推广之家app下载
  • 做个网站app吗网站平台都有哪些
  • 银川网站建设网络网站系统开发
  • 电子商务网站建设的体会seo公司排名教程
  • 网站底部留言代码郑州模板网站建设
  • 网站备案需要多少钱网站数据
  • 机械网站开发百家号权重查询