记录学习的第三十一天

[复制链接]
发表于 2025-9-21 21:02:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  本日只做了一道逐日一题。

 

 说实话,根本不会做呀,该怎么办?
以下是我看了题解之后的思绪(恰当新手):
1.起首肯定是要求出整个数组的不同数字有多少个的使用set来使用
2.右指针开始进入窗口,把元素放进哈希表中,如果此时窗口的元素到达了整个数组的不同数字的个数,就举行下一步出窗口使用
3.出窗口使用必要移动左指针,同时在哈希表中把这个元素的出现次数减一,如果此时减一之后发现即是0了,那么这个元素就不存在哈希表中了,把它在哈希表中删除,别的,此时窗口中的元素的种类就不满足即是整个数组的不同数字的个数的要求了。此时窗口为[left,right]。
4.不外要留意的是假设固定在right时,left位置不满足,但是前一次的窗口是满足的,前前前……次也是满足的,那么就可以盘算出固定right时有多少个窗口是满足的:从0~left-1一共有left个窗口。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表