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

a5站长网wordpress相册模板

a5站长网,wordpress相册模板,3c渠道网,wordpress 网络图片不显示图片283.移动零 题目: 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,1,0,3,12] 输出: [1,3,12,0,0] …

283.移动零

题目:

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

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

示例 1:

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

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

思路:

使用双指针i和j。第一遍遍历i从左到右遍历数组,遇到非零元素即赋值给j所在的位置。因为j的数量一方面等于非零元素的个数,另一方面等于最终形态数组的左边最后一个非零元素的下标-1。(相当于一个数组长度是4,最后一个元素的下标就是4-1,为3)
第二遍再从j下标开始遍历,一直到数组结尾,都赋值为0,即相当于从最终形态数组的左边最后一个非零元素的下一个,即零元素一直到数组结尾,都赋值为0.

java代码:

class Solution {public void moveZeroes(int[] nums) {int len=nums.length;if(nums == null||len==0) return;int j=0;for(int i=0;i<len;i++){if(nums[i]!=0){nums[j++]=nums[i];}}for(int i=j;i<len;i++)nums[i]=0;}
}

效率:

时间上为1ms,击败了99%的用户。不用再优化了。

11.盛最多水的容器

题目

给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。

找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。

说明:你不能倾斜容器。
在这里插入图片描述
n == height.length
2 <= n <= 10^5
0 <= height[i] <= 10^4

思路

暴力做法:从左到右遍历,每次都固定左边界,然后再从左边界开始遍历右边界。这样可以涵盖所有面积的情况。但是因为是双重循环,所以时间复杂度为O(N)。

双指针做法:针对这种两边边界都会移动的情况下,我们优化时首先需要考虑的就是双指针。暴力循环的做法,每次固定左边界,右边界移动,会让底和高同时变化。这样就让我们无法提前判断是否某些情况是无需遍历的,可以被优化的。基于此,我们要思考的就是如何移动,能只有一个因素影响面积。
我们发现,如果不是固定左边界,然后右边界从左边界处从左到右遍历。而是左右边界都各自放在坐标的左右边界,这样就确保了移动的过程中底是越来越小的,只有高变化时才有可能出现面积更大的可能。那么就只有一个因素影响面积。
接下来我们需要判断什么时候移动左边界,什么时候移动右边界。同理,我们只需要移动高度较小的那边。因为高度较小的那边限制了面积,只有移动他才有可能出现面积更大的情况。
这个题力扣官方讲解的很好,建议还是不明白的话去看下官方讲解视频。

java代码

class Solution {public int maxArea(int[] height) {int len=height.length;int ans=0;int i=0;int j=len-1;while(j>i){int mmin=Math.min(height[i], height[j])*(j-i);ans=Math.max(ans, mmin);//考虑移动左指针还是右指针//如果左指针的高度比右指针小,那么此时移动左指针才有可能找到面积更大的区域if(height[i]<height[j]){//移动左指针i++;}else j--;}return ans;}
}

效率

4ms,击败 61.80%使用 Java 的用户,还行,没啥需要优化的空间了。

http://www.yayakq.cn/news/631017/

相关文章:

  • 外贸网站建设网页有做国际网站生意吗
  • 网站建设帖子化妆品销售网站开发与设计
  • 昆明网站建设公司推荐php培训
  • 企业可以做哪些网站有哪些内容吗网页设计公司上市公司
  • 网站建设 天秀网络wordpress怎么把页脚调小点
  • 分享公众号的网站广东深圳网站建设服务
  • 快速建站服务器北京网页设计好的公司
  • 微信开放文档网站站内优化方案
  • 大连手机自适应网站制作价格地瓜互联 wordpress
  • 大连网站建设信息房屋设计装修公司
  • 网站设计 趋势不愁销路的小型加工厂项目年入百万
  • 吕梁网站制作吕梁安全网站建设综合实训报告
  • 网站建设开发ppt中文商城html网站模板
  • 京东商城网站建设目标威海房产网
  • 这样做的网站2016个人做淘宝客网站
  • 三亚市住房与城乡建设局网站济南网网络推广
  • 深圳网站建设html5wordpress 带分页的主题
  • 云制造网站怎样做网商网站
  • 安徽建设厅网站证件查询免费站长统计工具
  • 重庆触摸屏_电子商务网站建设wordpress小说主题
  • 家用宽带怎么做网站 访问网站ftp密码怎么修改
  • 河南龙王建设集团网站政务微信小程序
  • 新网$网站优化免费制作手机app软件
  • 深圳做网站公手机端网站关键字排名
  • 营销型网站可以吗上海建科建设监理网站
  • 菏泽做网站的工作室免费开网店的app
  • 做暧暧xoxo网站学做网站论坛vip账号破解
  • 网站制作厂家有哪些珠海网站建设建站系统
  • 建设网站的账务处理慈溪企业网站建设
  • 外贸网站推广公司最大免费免费网站模板