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

企业官方网站建设运营方案内网网站怎么建设

企业官方网站建设运营方案,内网网站怎么建设,网站设置快捷方式,图跃网站建设题目链接 面试题 17.05. 字母与数字 mid 题目描述 给定一个放有字母和数字的数组,找到最长的子数组,且包含的字母和数字的个数相同。 返回该子数组,若存在多个最长子数组,返回左端点下标值最小的子数组。若不存在这样的数组&…

题目链接

面试题 17.05. 字母与数字 mid

题目描述

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

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

示例 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≤100000array.length \leq 100000array.length100000

分析:前缀和 + 哈希表

我们可以将 字母看作是 +1,数字看作是 -1,那么原问题就转换为 求最长的一段和 sum = 0的子数组

我们用一个哈希表 m来记录遍历过的 前缀和 s[i]和它对应的下标 i

如果当前遍历到了 s[j],并且 m存在 s[j]这个键。由此,我们可以得到 i = m[s[j]]。那么 (i , j]这一段就是和为 0

的子数组,我们就将答案更新即可。

我们用 idx代表最长的那段子数组的起始下标,用 len表示最长的那段子数组的长度。

最后返回 array的这一段 [idx , idx + len]即可。

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

C++代码:

class Solution {
public:vector<string> findLongestSubarray(vector<string>& arr) {int n = arr.size();unordered_map<int,int> m{{0,-1}};int idx = 0 , len  = 0;for(int j = 0 ,s = 0;j < n;j++){s += (arr[j][0] >= 'A' ? 1 : -1);if(m.count(s)){int i = m[s];if(j - i > len){len = j - i;idx = i + 1;}}else m[s] = j;}return vector<string> (arr.begin() + idx,arr.begin() + idx + len);}
};

Python代码:


class Solution:def findLongestSubarray(self, arr: List[str]) -> List[str]:m = {0:-1}s = idx = len = 0for j,str in enumerate(arr):s += 1 if str.isalpha() else -1if s in m:i = m[s]if len < j - i:idx = i + 1len = j - ielse:m[s] = j    return arr[idx:idx+len]
http://www.yayakq.cn/news/418600/

相关文章:

  • 手机网站作用管理学试题库及答案
  • 定制网站建设哪家便宜网站做好是需要续费的吗
  • 西安网站制作有限公司如何运用网站做宣传
  • 杭州大的做网站的公司备案 增加网站
  • 网站开发信息文档怎么做二十八页美食网站
  • 郑州网站公司昆明网站建设公司哪家便宜
  • 网站开发有几种湖南建设网塔吊证查询
  • 创建站点的方法网站开发人员调试
  • 论坛建立网站1800做网站因为专业
  • 网站活动推广方案Wordpress 101
  • 垂直网站内容建设重庆新媒体运营公司有哪些
  • 电子 网站建设申请过程重庆快速网站建设
  • 网站支付接口雅茂道网站建设
  • 网站怎么做域名解析中山市企业网站建立
  • wordpress 网站很慢免费万能视频提取器
  • 398做网站彩铃建筑网站首页
  • 杭州知名的网站制作策略智能云建站
  • 门户网站需要多少费用wordpress手机不能显示字体
  • 织梦网站需要付费吗平面设计师的网站
  • 中文竖排wordpress杭州seo外包服务
  • dedecms制作网站地图重庆免费做网站
  • 做一个简单网站多少钱内蒙住房和城乡建设部网站
  • 网站建设的目标客户百安居装修报价清单
  • 天猫交易网站淮北论坛最新招聘信息
  • 网站策划是干什么的嘉兴建设教育网站
  • 东莞朝阳企讯网做的网站西安抖音seo推广
  • 新网站的宣传推广上海开办企业一窗通网上服务平台
  • 对互联网网站的理解企业网站互动交流模块
  • 计算机一级考试网站怎么做郴州在哪里
  • 宁德市城乡建设局网站个人购物网站怎么做