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

网站用什么语言好设计网站推荐免费

网站用什么语言好,设计网站推荐免费,企业管理咨询公司招聘,wordpress背景高斯模糊题目 904. 水果成篮 - 力扣(LeetCode) 思路 题目本质 你有一个整数数组,每个元素代表一种水果。你只能用两个篮子,每个篮子只能装一种水果。你要在数组中找一个最长的连续子数组,这个子数组里最多只包含两种不同的…

题目

904. 水果成篮 - 力扣(LeetCode)

思路

题目本质

你有一个整数数组,每个元素代表一种水果。你只能用两个篮子,每个篮子只能装一种水果。你要在数组中找一个最长的连续子数组,这个子数组里最多只包含两种不同的数字(水果种类)。

解题思路(滑动窗口法)

滑动窗口:

用两个指针(left和right)表示当前连续子数组的左右边界。right每次向右扩展,left根据需要向右收缩。

统计水果种类:

用一个哈希表(如unordered_map)记录当前窗口内每种水果的数量。

窗口合法性:

  • 如果窗口内水果种类不超过2种,窗口合法,更新最大长度。
  • 如果超过2种,移动left指针,直到窗口内只剩下2种水果。

更新答案:

每次窗口合法时,更新最大长度。

过程

以 [1,2,1,2,3] 为例:

  • 初始窗口 [1],种类1种。
  • 扩展到 [1,2],种类2种。
  • 扩展到 [1,2,1],种类2种。
  • 扩展到 [1,2,1,2],种类2种。
  • 扩展到 [1,2,1,2,3],种类3种,不合法。此时需要移动left,直到只剩2种水果。

读者可能出现的错误写法

class Solution {
public:int totalFruit(vector<int>& fruits) {int left = 0;int right = 0;int ret = 0;unordered_map<int,int> sum;while(right < fruits.size()){sum[fruits[right]]++;while(sum.size() > 2){sum[fruits[left]]--;}ret = max(ret,right-left+1);right++;}return ret;}
};

代码主要问题在于:

当sum.size() > 2时,你只减少了sum[fruits[left]]--,但是没有移动left指针,

也没有在sum[fruits[left]]为0时将其从map中删除。这样会导致死循环或统计错误。

正确写法

class Solution {
public:int totalFruit(vector<int>& fruits) {int left = 0, right = 0, ret = 0;unordered_map<int, int> sum;while (right < fruits.size()) {sum[fruits[right]]++;while (sum.size() > 2) {sum[fruits[left]]--;if (sum[fruits[left]] == 0) {sum.erase(fruits[left]);}left++;}ret = max(ret, right - left + 1);right++;}return ret;}
};

文章转载自:

http://FzaxAZqB.yybcx.cn
http://qCOvPX3A.yybcx.cn
http://oHsMhrQW.yybcx.cn
http://cQxSNZAr.yybcx.cn
http://L9WUuF68.yybcx.cn
http://zd3wavOP.yybcx.cn
http://lYzkJDSX.yybcx.cn
http://AQ6abMOZ.yybcx.cn
http://ZsE7EzVw.yybcx.cn
http://oNHpjD5Y.yybcx.cn
http://uQ5lQZ8K.yybcx.cn
http://McElsYrW.yybcx.cn
http://88188TeO.yybcx.cn
http://O90Ye5vW.yybcx.cn
http://On5vvM13.yybcx.cn
http://CQa9chGC.yybcx.cn
http://vIKKE2vB.yybcx.cn
http://AAiV2LJq.yybcx.cn
http://MaAfHXsK.yybcx.cn
http://vJYeVQDj.yybcx.cn
http://jXcJ8OIn.yybcx.cn
http://aVfoE3r5.yybcx.cn
http://LN5s8TOg.yybcx.cn
http://4iu79jlq.yybcx.cn
http://g1RFt0GG.yybcx.cn
http://KNtKw4Al.yybcx.cn
http://1dahSKkD.yybcx.cn
http://AAXevs7m.yybcx.cn
http://JIbMS8e9.yybcx.cn
http://OFbfTUtJ.yybcx.cn
http://www.dtcms.com/wzjs/750718.html

相关文章:

  • 网站开发面试自我介绍童程童美少儿编程怎样收费
  • 无锡网站的建设专门做特卖的网站是什么意思
  • 重庆建站公司费用京东网上商城下载
  • 中外商贸网站建设wordpress怎么去除底部
  • 建设vip视频解析网站违法吗沈阳建筑工程信息平台
  • 做的网站如何发布会如何开通网络
  • 青海省住房和城乡建设局网站厦门网站seo优化
  • 免费建音乐网站东莞网站平面设计
  • 杭州网站建设设计公司WordPress菜单过滤器
  • 如何做网站规划免费自学平面设计的网站
  • 专业的建设网站哪个好长沙做网站要微联讯点很好
  • 重庆网站推广解决方案杭州手机建站模板
  • 福州网站网站托管工作室
  • 石家庄网站建设网站建设山东省住房和城乡建设厅网站定额站
  • 富阳网站建设找哪家济南网络推广公司
  • 一个网站如何工作流程鞍山市残疾人网站开发
  • 专业做网站深圳城乡和建设局网站
  • 网站设计 联系大连市建设网
  • 杭州做网站外包公司潍坊专业网站建设价格
  • 国内空间没备案可以打开网站吗房产信息查询网
  • 记事本做网站怎么改字体wordpress缩略图比例
  • 佛山网站优化步骤网站原型图展示
  • 网页前端模板网站wordpress html5的关系
  • 奉贤网站建设上海站霸泉州网站建设电话
  • 现在标书都从哪个网站下载做a免费网站
  • 如何 做网站挣钱重庆旅游网站建设公司
  • 网站建设硬件设计方案什么视频网站可以做链接
  • 杭州市拱墅区网站建设深圳福田建网站
  • 网站改版案例外贸公司网站模板免费
  • 制作免费的网站辅助色网站