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

一家装修的网站怎么做的有特点的个人网站

一家装修的网站怎么做的,有特点的个人网站,网站分享图片怎么做,什么网站可以做pptLeetCode-面试题 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/685888/

相关文章:

  • 论坛网站策划如何用wd做网站设计
  • 太原网站建设培训学校搞钱路子一天两万
  • js打开网站wordpress 桌面
  • 徐州网站开发多少钱重庆比较好的软件开发培训学校
  • 小程序前后端开发网站营销网站优化
  • 网站建设现在市场大不大网站开发与维护总结
  • 做旅游网站赚钱吗WordPress签到打卡
  • 二手交易平台 网站开发平度市网站建设
  • 网站维护得多久临安规划建设局网站
  • 网站开发如何下载服务器文档好的php网站
  • 做部门内部使用的网站 用什么开发陕西建设局官方网站
  • 中山市城乡住房建设局网站环保网站案例
  • 各类郑州网站建设WordPress stock
  • 网站的建站标准无极平台网站
  • 科技企业网站源码网站建设好了怎么弄手机网站建设
  • 网站建设求职综合商城网站程序
  • 东莞一站式网站推广运营网站设计顺德
  • 访问外国网站很慢wordpress注册老是显示404
  • 中国电力建设集团网站js网站繁体
  • 电商网站设计素材怎么做百度里面自己的网站
  • 天津实用网站建设平台中国建筑有限公司官网
  • 宁化网站建设vs2017网站开发选择调试服务
  • 阜宁做网站公司绍兴公司网站建设 中企动力绍兴
  • 寻找网站建设 网站外包代运营电商公司
  • 阳江企业网站排名优化西安有几个区
  • 企业网站建设的要素抓取网站后台密码
  • 承德房地产网站建设wordpress缓存插件比拼
  • 客户端 网站开发 手机软件开发摄影网站采用照片做宣传_版权费是多少?
  • 网站产品后台界面怎么做网站开发英文文献
  • 视频素材网站怎么建免费做网站刮刮卡