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

洛阳青峰网络公司做网站wordpress 多模板

洛阳青峰网络公司做网站,wordpress 多模板,wordpress后台切换中文,福建手工外发加工网1、连续子数组、连续子串问题通常需要滑动窗口来求解,本篇文章对应的“二、重复元素类型”在此基础上对连续子数组、连续子串中重复元素个数、种类进行考察,此时,需要使用和维护哈希表进行左右指针的移动,因此这类题目对应的解法为…

1、连续子数组、连续子串问题通常需要滑动窗口来求解,本篇文章对应的“二、重复元素类型”在此基础上对连续子数组、连续子串中重复元素个数、种类进行考察,此时,需要使用和维护哈希表进行左右指针的移动,因此这类题目对应的解法为:滑动窗口+哈希表
2、这类问题最关键的还是思考清楚左右指针如何更新:右指针遍历数组左指针哈希表满足一定条件时更新

904. 水果成篮

这道题目是 选取 最长只包含2种元素的连续子数组,思路是 滑动窗口+哈希表,设置左右边界[left, right],初始值均为0,右边界遍历数组,将窗口内的元素种类个数统计到哈希表中,关键在于窗口的左边界如何更新

from typing import List
import collections'''
904. 水果成篮
题目描述:你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组 fruits 表示,其中 fruits[i] 是第 i 棵树上的水果 种类 。
示例 1:输入:fruits = [1,2,3,2,2]输出:4解释:可以采摘 [2,3,2,2] 这四棵树。
题眼:选取 最长只包含2种元素的连续子数组
思路:滑动窗口+哈希表,设置左右边界[left, right],初始值均为0,右边界遍历数组,将窗口内的元素种类个数统计到哈希表中,关键在于窗口的左边界如何更新
'''class Solution:def totalFruit(self, fruits: List[int]) -> int:# 请款1、数组长度小于等于2if len(fruits) <= 2:return len(fruits)# 情况2、滑动窗口+哈希表result = 2  # 取当前情况中 可能的最小值left, right = 0, 0  # 双指针分别负责滑动窗口的左右边界hashTable = {}  # 滑动窗口对应的子串需要哈希表统计while right < len(fruits):# 1、当移动right扩大窗口,进行哪些操作if fruits[right] in hashTable:hashTable[fruits[right]] += 1else:hashTable[fruits[right]] = 1# 2、什么条件下,窗口应该暂停扩大,开始移动left缩小窗口while len(hashTable) == 3:# 3、缩小窗口进行哪些操作hashTable[fruits[left]] -= 1if hashTable[fruits[left]] == 0:hashTable.pop(fruits[left])left += 1# 4、更新结果result = max(result, right - left + 1)  # 滑窗[left, right]是左闭右闭区间,子数组长度==元素个数right += 1return resultif __name__ == '__main__':obj = Solution()while True:try:in_line = input().strip().split('=')[1].strip()[1: -1]nums = []if in_line != '':for n in in_line.split(','):nums.append(int(n))# print(nums)print(obj.totalFruit(nums))except EOFError:break

3. 无重复字符的最长子串

这道题目的题眼是 无重复字符+最长子串,解题思路是 滑动窗口+哈希表:子串问题联想到滑动窗口,重复问题联想到哈希表,设置左右边界[left, right],初始值均为0,右边界遍历数组,将窗口内的元素种类统计到哈希表中,关键在于窗口的左边界如何更新

'''
3. 无重复字符的最长子串
题目描述:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度
示例 1:输入: s = "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。
题眼:无重复字符+最长子串
思路:滑动窗口+哈希表:子串问题联想到滑动窗口,重复问题联想到哈希表,设置左右边界[left, right],初始值均为0,右边界遍历数组,
将窗口内的元素种类统计到哈希表中,关键在于窗口的左边界如何更新
'''class Solution:def lengthOfLongestSubstring(self, s: str) -> int:# 情况1、字符串长度小于等于1if len(s) <= 1:return len(s)# 情况2、滑动窗口+哈希表result = 1  # 取当前情况中 可能的最小值left, right = 0, 0hashTable = {}  # 滑动窗口对应的子串需要哈希表统计while right < len(s):# 1、当移动right扩大窗口,进行哪些操作if s[right] not in hashTable:hashTable[s[right]] = 1else:hashTable[s[right]] += 1# 2、什么条件下,窗口应该暂停扩大,开始移动left缩小窗口while hashTable[s[right]] > 1:# 3、缩小窗口进行哪些操作hashTable[s[left]] -= 1left += 1# 4、更新结果result = max(result, right - left + 1)  # 滑窗[left, right]是左闭右闭区间,子数组长度==元素个数right += 1return resultif __name__ == "__main__":obj = Solution()while True:try:in_line = input().strip().split('=')[1].strip()[1: -1]s = ""if in_line != "":s = in_lineprint(obj.lengthOfLongestSubstring(s))except EOFError:break
http://www.yayakq.cn/news/393818/

相关文章:

  • 水利工程建设监理网站全免费自助建站
  • 拐角型布局网站wordpress 媒体文件库
  • 做网站基本流程高端制作网站技术
  • 建站点如何再腾讯云服务器做网站
  • 河南省住房和建设厅安监站网站wap网站开发联系电话
  • 网站备案的意思wordpress 首页logo
  • 电商网站建设与维护意味着什么河北三河建设局网站
  • 有没有专做推广小说的网站论坛打赏网站开发
  • 企业网站建立策划书二级学院网站建设及利用情况
  • 有户型图怎么免费设计装修网站建设制作设计推广优化
  • 国外手机网站模板网站制作完成后
  • 优化网站内链南阳做网站公司电话
  • 火车头采集器wordpress发布模块国内好的seo网站
  • 怎样在网站做咨询医生挣钱wordpress mu安装
  • 素材网站的素材可以商用吗人工智能搭建
  • 无需下载国外黄冈网站推广网站建设宽带
  • 应税服务网站开发开票如何推广运营网站
  • 浙江建设职业技术学院尔雅网站深圳的网站建设的公司
  • 天津网站制作软件科技成果转化网站建设
  • 大连旅顺博物馆福田网站建设公司乐云seo
  • 岐山县住房和城市建设局网站建设银行开通网银网站
  • 域名和空间都有了怎么做网站优化一个网站多少钱
  • 优化网站搜索排名模板网站是什么意思
  • php网站开发实施方案网络营销推广案例有哪些
  • 国外做鞋子的网站没有网站怎么做链接视频播放器
  • 深圳福田做网站怎么可以建网站
  • 珠海自适应网站设计旅游做哪个网站好
  • 网站受到攻击会怎么样网站建设与推广范文
  • 周口市规划建设局网站自用电脑做网站
  • 北京做网站制作的公司专门做二手手机的网站