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

网站建设与管理 第2版seo网站优化课程

网站建设与管理 第2版,seo网站优化课程,怎么使用微wordpress,东莞 营销网站建设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.hengruixuexiao.com/news/42940.html

相关文章:

  • 韩国最牛的设计网站大全外链查询
  • 做网站需要技术seo技术学院
  • 做网站 服务器windows优化大师收费吗
  • 江津哪个网站可以做顺风车营销型网站的分类
  • 昆明做网站做的好的公司杭州百度快照优化公司
  • 做网站能用ai做吗bt搜索引擎
  • wordpress新建header常州seo建站
  • 郑州网站建设创新网络怎么推广平台
  • 视频解析网站免费自学电商教程
  • angeljs做的网站推广联盟
  • 想做个网站怎么做引擎搜索有哪些
  • 企业网站推广价格推广软件哪个好
  • 中华人民共和国商务部网站黄冈网站推广软件视频下载
  • 网站外部链接建设网站推广入口
  • 微信平台可以做微网站吗搜索引擎有哪些?
  • 有没有免费手游代理优化大师优化项目有哪些
  • 动态网站建设简介最优化方法
  • 怎么通过网络推广网站优化策略分析论文
  • 河北省永清县建设局网站百度贴吧网页版登录入口
  • 软件开发网站策划方案代写
  • 王野天是谁seopeixun
  • 视频教程网站模板网站推广
  • 怎样做同城配送网站企业网络
  • 广州做和改版网站的公司seo关键词推广优化
  • 建设网站要在需求深圳百度地图
  • 微商城网站建设代理商磁力兔子
  • 高端专区内蒙古seo优化
  • 网站对应不同域名google play应用商店
  • 高端大气酒店网站源码手机怎么做网站免费的
  • 网站建设吗站长工具seo综合查询降级