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

昆明品牌网站建设商品推广软文范例200字

昆明品牌网站建设,商品推广软文范例200字,泰州网站建设服务好,泛华建设集团网站题目:给定一个数组 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

第一种解题方法+代码:

第一种方法时间复杂度为O(n)。

代码:

class Solution {public void moveZeroes(int[] nums) {/*解题思路:双指针遍历数组1.使用一个指针 i 遍历数组 nums。2.使用另一个指针 j 记录非零元素应该放置的位置。3.当遇到非零元素时,将其移动到 j 指向的位置,并将 j 向前移动。4.遍历完成后,从 j 开始到数组末尾的位置全部填充 0。*///记录非0元素存放的位置int j = 0;//遍历数组for(int i = 0;i<nums.length;i++){if(nums[i] != 0){nums[j] = nums[i];j++;}}//填充0while(j<nums.length){nums[j] = 0;j++;}}
}

第二种解题方法+代码:

代码:

class Solution {public void moveZeroes(int[] nums) {/*解题思路:类似冒泡排序遍历数组nums,查找到0元素和非0元素时,交换它们的位置,将0元素向后移,一直到0元素都在数组的末尾*///嵌套for循环遍历numsfor(int i = 0;i<nums.length;i++){for(int j = 0;j<nums.length -i -1 ;j++){//查找到0元素和非0元素时,交换它们的位置if(nums[j] == 0 && nums[j+1] != 0){//类似于交换2杯水,需要一个中间变量int temp = nums[j];nums[j] = nums[j+1];nums[j+1] = temp;   }}}}
}

 

第二种解题方法效率比较低,需要花费的时间久(嵌套for循环的时间复杂度为O(n^2))。

总结:个人认为双指针遍历循环更简单高效,时间空间复杂度更小,因此个人更加推荐第一种解题方法。第二种方法类似于冒泡排序,在这篇博客中提供一种解题思路。继续加油~

http://www.dt0577.cn/news/25001.html

相关文章:

  • 北京网站建设的价格天惠州百度seo找谁
  • 北京最新消息今天新增病例肇庆网站快速排名优化
  • 网站建设基本要素长春seo培训
  • 网站制作什么语言最好2023年新闻小学生摘抄
  • discu论坛网站模板杭州专业seo
  • 外贸网站建站电话多少网络公司网站
  • 微信小程序 创建网站刷关键词优化排名
  • 做商城网站可以个人备案成都爱站网seo站长查询工具
  • 12360官方网站下载百度我的订单app
  • 赣州网站制作北京seo关键词排名优化软件
  • wordpress显示代码seo外链网
  • 自己怎样做网站显示危险提高工作效率心得体会
  • 网站建设服务非常好湖南岚鸿公司网络推广公司电话
  • 郑州好的企业网站建设百度商城官网首页
  • 做网站公证需要费用是多少互联网舆情监测系统
  • 做网站图片推广免费
  • 安卓手机怎么做网站云南网络推广服务
  • 关于做情侣的网站的图片大全深圳营销型网站
  • 做网站如何宣传关键词优化一年多少钱
  • 为什么做这个网站项目设计公司排名
  • 做网站的费用是多少钱关键词优化是什么意思?
  • 网站建设行业发展史天堂网
  • 做网站公司常熟seo技术分享博客
  • 郑州网站制作公司铁岭网站seo
  • 公司注册后怎么做网站百度广告搜索引擎
  • 公司做网站需要哪些步骤旺道seo工具
  • 京东网站的建设目的济南seo
  • 做社区网站用什么程序好网络营销策划方案3000字
  • 做语文高考题网站足球排名世界排名
  • 网站优化软件方案潍坊网站seo