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

怎么做网页版网站深圳防疫最新进展

怎么做网页版网站,深圳防疫最新进展,网站建设参考书籍,网站域名到期后果Every day a Leetcode 题目来源:1839. 所有元音按顺序排布的最长子字符串 解法1:滑动窗口 要找的是最长美丽子字符串的长度,我们可以用滑动窗口解决。 设窗口内的子字符串为 window,每当 word[right] > window.back() 时&…

Every day a Leetcode

题目来源:1839. 所有元音按顺序排布的最长子字符串

解法1:滑动窗口

要找的是最长美丽子字符串的长度,我们可以用滑动窗口解决。

设窗口内的子字符串为 window,每当 word[right] >= window.back() 时,说明可以按字典序升序排布,我们都可以将 word[right] 添加进 window 的末尾,我们使用一个集合 cnt 存储每次遇到的 word[right],当 cnt.size() = 5时,说明所有 5 个英文元音字母都至少出现了一次,更新长度:max_len = max(max_len, (int)window.size())。

如果遇到了不按字典序升序排布的情况,我们发现窗口必须全部清空,于是有:window = “”,cnt.clear(),同时要改变窗口的左边界 left = right,立即将 word[left] 加入进窗口和集合,重新开始遍历。

代码:

/** @lc app=leetcode.cn id=1839 lang=cpp** [1839] 所有元音按顺序排布的最长子字符串*/// @lc code=start// 滑动窗口class Solution
{
public:int longestBeautifulSubstring(string word){// 特判if (word.size() < 5)return 0;int n = word.size();string window;unordered_set<char> cnt;int max_len = 0, left = 0, right = 0;while (right < n){if (window.empty() || word[right] >= window.back()){window += word[right];cnt.insert(word[right]);right++;if (cnt.size() == 5)max_len = max(max_len, (int)window.size());}else{window = "";cnt.clear();left = right;window += word[left];cnt.insert(word[left]);right++;}}return max_len;}
};
// @lc code=end

结果:

在这里插入图片描述

复杂度分析:

时间复杂度:O(n),其中 n 是字符串 word 的长度。

空间复杂度:O(n),其中 n 是字符串 word 的长度。

解法2:一次遍历

由滑动窗口的启发,我们发现只设立几个变量也能达到相同的效果。

代码:

class Solution
{
public:int longestBeautifulSubstring(string word){// 特判if (word.size() < 5)return 0;int n = word.size();int max_len = 0;int vowel = 1, cur_len = 1;for (int i = 1; i < n; i++){if (word[i] >= word[i - 1]){cur_len++;if (word[i] > word[i - 1])vowel++;}else{cur_len = 1;vowel = 1;}if (vowel == 5)max_len = max(max_len, cur_len);}return max_len;}
};

结果:

在这里插入图片描述

复杂度分析:

时间复杂度:O(n),其中 n 是字符串 word 的长度。

空间复杂度:O(1)。

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

相关文章:

  • 做外贸的网站简称为什么网站北京h5网站建设公司
  • wamp 网站开发首先做什么chinacd小说wordpress
  • 浙江省住房建设局网站首页seo好学吗入门怎么学
  • 临沂网站群发软件巴中商城网站建设
  • 广州 网站开发公司爱站网站长seo综合查询
  • 免费个人网站怎么做wordpress 怎么加页面
  • 网站的风格设计有哪些怎么推广自己的公司网站
  • 网站视频制作怎么做五合一网站
  • seo网站项目讲解wordpress自定义排序
  • 网站备案图标做网站的技术
  • discuz建站教程企业建设网站的主要目的
  • 广州网站建设论坛手机免费建设网站
  • 广东微信网站开发哪家好wordpress 文章 时间段
  • 德阳定制建站网站建设制作常州个人网站建设
  • 中国神鹰网站建设开设计公司客源哪里找
  • 帮朋友做网站 知乎在线flash相册网站源码
  • 网站建设亿码酷出名5dedecms 安防监控行业网站模板
  • 毕业设计 网站开发如何用电脑做网站服务器吗
  • 高端网站建设代码wordpress 模板层级
  • 护肤品 网站建设策划 最新版天堂资源在线
  • 哪里有做网站app的网站建设合同付款比例
  • 重庆网站推广流程电子商务网站的设计
  • 网站防止非法链接怎么做注册公司需要什么流程
  • vip域名做网站好不好微信公众号如何做网站
  • 有教做桥梁质检资料的网站吗开互联网公司需要什么条件
  • phpstud可以做几个网站游戏制作软件有哪些
  • 高校档案网站建设的目的是什么意思网站开发如何无感更新
  • 惠东做网站网络规划与设计期末考试题及答案
  • 东莞网站建设推广费用wordpress婚庆主题公园
  • 网站内链是什么 怎么做青岛设计网站的公司哪家好