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

c语言做网站吗江西省赣州市中考成绩查询时间

c语言做网站吗,江西省赣州市中考成绩查询时间,西安网站运营,网站标题和关键词有什么区别LeetCode-面试题 17.05. 字母与数字【前缀和,哈希表】题目描述:解题思路一:前缀和。数字为-1,字母为1。我们需要找到的子数组是前缀和之差为0的,例如s[right]-s[left]0,那么s[right]s[left],变为…

LeetCode-面试题 17.05. 字母与数字【前缀和,哈希表】

  • 题目描述:
  • 解题思路一:前缀和。数字为-1,字母为1。我们需要找到的子数组是前缀和之差为0的,例如s[right]-s[left]=0,那么s[right]=s[left],变为找前缀和相同的了。我们用一个字典记录前缀和的最早出现下标。
  • 解题思路二:用一个整数替换前缀和列表,在遍历array过程中计算前缀和。其值在[-n,n]之间故数组长设为2n+1。具体看注释。
  • 解题思路三:0

题目描述:

给定一个放有字母和数字的数组,找到最长的子数组,且包含的字母和数字的个数相同。

返回该子数组,若存在多个最长子数组,返回左端点下标值最小的子数组。若不存在这样的数组,返回一个空数组。

示例 1:

输入: [“A”,“1”,“B”,“C”,“D”,“2”,“3”,“4”,“E”,“5”,“F”,“G”,“6”,“7”,“H”,“I”,“J”,“K”,“L”,“M”]

输出: [“A”,“1”,“B”,“C”,“D”,“2”,“3”,“4”,“E”,“5”,“F”,“G”,“6”,“7”]

示例 2:

输入: [“A”,“A”]

输出: []
提示:

array.length <= 100000
https://leetcode.cn/problems/find-longest-subarray-lcci/description/

解题思路一:前缀和。数字为-1,字母为1。我们需要找到的子数组是前缀和之差为0的,例如s[right]-s[left]=0,那么s[right]=s[left],变为找前缀和相同的了。我们用一个字典记录前缀和的最早出现下标。

array.length 非常大,常规暴力算法难以不超时。

注意python里面不是if else 而是if elif

class Solution:def findLongestSubarray(self, array: List[str]) -> List[str]:s=list(accumulate((-1 if v[0].isdigit() else 1 for v in array),initial=0))left=right=0#前缀和一般是左闭右开[left,right)first={}#记录前缀和最早出现的下标for i,v in enumerate(s):j=first.get(v,-1)#v是s[i]出现的最早下标,若无则为-1if j<0:#首次遇到s[i]first[v]=ielif i-j>right-left:    #遇到更长的子数组left,right=j,ireturn array[left:right]

时间复杂度:O(n)
空间复杂度:O(n)

解题思路二:用一个整数替换前缀和列表,在遍历array过程中计算前缀和。其值在[-n,n]之间故数组长设为2n+1。具体看注释。

class Solution:def findLongestSubarray(self, array: List[str]) -> List[str]:left=right=0#前缀和一般是左闭右开[left,right)s=n=len(array)#s初始化为n防止出现负数下标first=[-1]*(2*n+1)#记录前缀和最早出现的下标,初始化为-1长为2n+1的数组first[s]=0#s[0]=0for i,v in enumerate(array,1):#表示i从1开始计数s+=-1 if v[0].isdigit() else 1j=first[s] #first[s]是s[i]出现的最早下标,若无则为-1if j<0:#首次遇到s[i]first[s]=ielif i-j>right-left:    #遇到更长的子数组left,right=j,ireturn array[left:right]

时间复杂度:O(n)
空间复杂度:O(n)

解题思路三:0


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

相关文章:

  • 河南网站建设品牌企业培训课程视频
  • 个人制作网站网站充值支付宝收款怎么做
  • 找工程承包seo网站优化代码
  • 住建局建设工程质量监督站免费网站建设魔坊
  • 诸暨网站制作设计宜兴市的城乡建设管理局网站
  • 建立自己的网站步骤免费网站制作推广
  • 个人网站设计提纲深圳手机网站设计
  • 郑州注册公司网站如何做一个网站
  • 做游戏用什么电脑系统下载网站百度关键词排名爬虫
  • 有什么做任务的网站吗网站建设方案与报价
  • 旅游电子商务网站策划书域名备案期间 网站访问
  • wordpress 主题 更改江苏怎么做网站排名优化
  • 北京亦庄网站建设公司自己开发app怎么赚钱
  • 如何做测评视频网站徐州市建设局招投标网站
  • Wordpress垂直类目站模版wordpress禁止必应访问
  • 公司名称变更网站要重新备案免费商城源码
  • 网站建设服务费怎么写分录网站建设控制面板怎么设置
  • 北京网站设计公司兴田德润放心seo点击排名软件哪家好
  • 58网站建设 网站制作外贸网站推广怎么做
  • 包装设计接单网站成都系统软件定制开发
  • wordpress 英文 企业网站模板展板设计模板
  • 网站营销活动策划做钓鱼网站的公司
  • 平台制作网站公司做网站注册商标
  • 有什么平台可以推广百度站长工具seo综合查询
  • 怎么做音乐mp3下载网站wordpress熊掌
  • 枣庄网站建设公司大型购物网站建设
  • 创建个人网站英文电子商务网站建设策划报告
  • 旅游网站建设方案书范文网站建设忘记密码邮箱设置
  • 做网站网络哈密地网站建设
  • 大连建网站策划网上有几个购物平台