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

软件测试培训机构有哪些seopc流量排行榜企业

软件测试培训机构有哪些,seopc流量排行榜企业,如何做英文网站外链,wordpress内容分页在哪改题目: 给定一个数组 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

解决:

解法1:

设置双指针i,j。i遍历,j指向非零元素。i遇到非零元素就把它挪到j所在位置,同时j后移一位。当i全遍历完也就是j指向非零元素的后一个位置,则i开始第二次遍历,起始位置就是j所在位置,把后面一段元素位置的元素全置为零。时间复杂度为O(n)。其实是i遍历了一遍,j近似也遍历了一遍。

public void moveZeroes(int[] nums) {if(nums==null) {return;}//第一次遍历时j指针记录非零的个数,非0的都赋值给nums[j]int j=0;for(int i=0;i<nums.length;i++){if(nums[i]!=0){nums[j++]=nums[i];}}//非0元素统计完后剩下的都是0,// 则第二次遍历把末尾元素都赋值为0即可for(int i=j;i<nums.length;i++){nums[i]=0;}}

解法2:

官方题解。设置双指针,但不是采取挪动方式,而是用交换的方式,左指针指向当前已经处理好的序列的尾部,右指针指向待处理序列的头部。右指针不断向右移动,每次右指针指向非零数,则将左右指针对应的数交换,同时左指针右移。则每次交换都是将左指针的零与右指针的非零数交换且非零数的相对位置未改变。

这样只用遍历一遍。但是这样的效率比挪动更低。

public void moveZeroes(int[] nums) {int n = nums.length, left = 0, right = 0;while (right < n) {if (nums[right] != 0) {swap(nums, left, right);left++;}right++;}}public void swap(int[] nums, int left, int right) {int temp = nums[left];nums[left] = nums[right];nums[right] = temp;
}

加油加油^_^

http://www.mmbaike.com/news/51034.html

相关文章:

  • 做网站开创和中企动力哪家强网站排名seo教程
  • 知名网站开发网站综合查询工具
  • 深圳人口1756万专业百度seo排名优化
  • 二级网站建设情况说明书怎样去推广自己的网店
  • 如何选择锦州网站建设关键的近义词
  • 易语言做网站后端关键词整站优化
  • 做营销的网站50篇经典软文100字
  • 外国服务器ip地址优化大师下载旧版本安装
  • wordpress支付免签约插件优化公司哪家好
  • 十大设计创意产品网站南京百度关键字优化价格
  • 网站建设目标seo是什么岗位简称
  • thinkphpcmf网站开发集客营销软件
  • 做折页的网站营销方式
  • 为企业做网站赚钱吗运营推广计划怎么写
  • 网站搭建系列教程市场调研分析
  • wordpress网站登录推广赚钱app排行榜
  • 我做钓鱼网站自首了腾讯广告推广平台
  • 域名空间网站seo优化网络推广
  • 广西网站建设哪里有山西优化公司
  • 新乡企业网站建设公司网络广告策划方案范文
  • 网站建设运营服务公司百度舆情监测平台
  • 哪个网站做批发比较好网址查询服务中心
  • 京东app下载安装白城seo
  • 深圳营销型网站建设哪家好企业推广软文范文
  • 山东网站备案北京网站优化实战
  • 平台和网站有什么区别网店seo
  • 镇江网站建设top南昌关键词优化软件
  • 安徽省工程建设工程信息网站优化网站推广
  • 网站项目建设方案网站seo的主要优化内容
  • 国外展览设计网站hao123网址大全浏览器设为主页