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

西安 网站 高端 公司建站公司费用

西安 网站 高端 公司,建站公司费用,Wordpress 转发后查看,营销思路一、题目描述 11. 盛最多水的容器 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明&…

一、题目描述

11. 盛最多水的容器

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

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

返回容器可以储存的最大水量。

说明:你不能倾斜容器。

二、题目解析

这题如果使用暴力枚举,会发现leetcode上显示超时,我们学习算法,目的就是掌握更多优秀的算法,所以暴力枚举直接摒弃掉。下面讲解时间复杂度为O(N)的双指针优秀算法:
我们首先明确一个规律:

以示例一为例,我们直接定义数组最左边为左值,数组的最右边为右值,最左边是1,保持最左边不动,然后移动最右边,会发现任何一个面积都比之前最右边的小,因为面积是由长度和高决定的,但高度不变或者变小,同样变化的还有长度,长度一定是变小的,所以左值直接摒弃。

总体思路就是先找两边高度的小值,并计算当前最大值然后摒弃最小值,缩小数组范围,继续遍历,直到left和right指针相遇,因此该算法的时间复杂度就是O(N)

三、原码

int maxArea(int* height, int heightSize) {//还是利用快慢指针的算法    int left = 0;int right = heightSize - 1;int minh = 0;int maxArea_ = 0;while(left < right){int flag = 0;//在循环体里的变量尽量都要在循环里面重定义!!!if(height[left] <= height[right]){minh = height[left];flag = -1;}elseminh = height[right];int Area = minh * (right - left);if(maxArea_ < Area)maxArea_ = Area;if(flag == 0)right--;elseleft++;}return maxArea_;
}

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

相关文章:

  • 做网站的需要什么资质证明成都大学网站建设特色
  • 做简单的网站链接php网站建设实训引言
  • 网站规划与网页设计合肥大建设
  • 宁波网站建设制作网络公司知名做网站公司
  • wap网站在线生成公司开办流程
  • 网站中英文切换代码免费网站免费网站平台
  • 精通网站开发书籍做影视网站用什么网盘最好
  • 网站设计结果哪里app开发公司好
  • 建立个人网站主题wordpress 应用商店
  • 中国工程建设造价信息网站自助建站系统官网
  • 百度多久收录网站网站做两个版本
  • 不备案的网站很慢机械加工网论坛
  • 做外贸出口的网站万界商城系统
  • 医院网站如何备案旅游网站怎么做的
  • 黄石网站建网站logo
  • 菜鸟如何建网站注册官网
  • 网站采集来源成都网站开发等项目外包公司
  • 网站建设销售需要懂的知识大连营销型网站
  • 网站备份流程网络营销的网站建设报告
  • 长阳网站建设青岛南丰网站建设公司
  • 网站建设存在风险wordpress插件制作教程
  • 黑龙江省建设银行 招聘网站成都建模培训
  • 建设通网站怎么样网站安排
  • 宁津做网站网站设计制作需要多少钱
  • 网站建设公司业务制作网页网站哪个好用
  • 国外医疗网站模板wordpress注册用户无法登录
  • 美食网站怎么做dw网络工程师自学难吗
  • 深圳营销网站建设大连设计网站公司
  • 网站建设所需硬件怎么上传视频到公司网站
  • 专业合肥网站建设常州建设局职称网站