力扣面试题17.18.最短超串

力扣面试题17.18.最短超串

  • 类似76.

  • 用哈希表处理短数组 然后遍历长数组

    • 找到相同元素 count– –
    • 当count==0时进入循环 —— 尽可能缩小区间
  •   class Solution {
      public:
          vector<int> shortestSeq(vector<int>& big, vector<int>& small) {
              int n=big.size(),m=small.size();
              int st=-1,ed=n;
              unordered_map<int,int> cnt;
              int count=0;  //记录small中元素个数
              for(auto c:small)
              {
                  if(!cnt.count(c)) count++;
                  cnt[c] ++;
              }
              for(int i=0,j=0;i<n;i++)
              {
                  cnt[big[i]] --;
                  if(cnt[big[i]] == 0) count--;
                  while(!count)
                  {
                      cnt[big[j]] ++;
                      //说明当前左端点为small中元素 并且big的区间内已不包含
                      if(cnt[big[j]] >0)
                      {
                          count++;
                          if(ed - st > i - j) st = j,ed = i;
                      }
                      j ++;
                  }
              }
              if(st == -1) return {};
              else return {st,ed};
          }
      };
    

相关推荐

  1. 面试17.18.

    2024-06-09 20:22:02       12 阅读
  2. 经典150第三十三小覆盖子

    2024-06-09 20:22:02       20 阅读
  3. 每日OJ_算法_滑动窗口⑧_76. 小覆盖子

    2024-06-09 20:22:02       40 阅读
  4. 100_滑动窗口_3_无重复字符的长子

    2024-06-09 20:22:02       34 阅读
  5. 题库第8:去重后的长子

    2024-06-09 20:22:02       18 阅读

最近更新

  1. Transformer模型论文解读、源码分析和项目实践

    2024-06-09 20:22:02       0 阅读
  2. python:使用openpyxl模块处理excel

    2024-06-09 20:22:02       0 阅读
  3. pg数据库时间比较

    2024-06-09 20:22:02       1 阅读
  4. C# 枚举的定义及使用

    2024-06-09 20:22:02       2 阅读
  5. Prompt Engineering 探险

    2024-06-09 20:22:02       1 阅读
  6. 机器学习之神经网络

    2024-06-09 20:22:02       2 阅读
  7. Lianwei 安全周报|2024.07.09

    2024-06-09 20:22:02       1 阅读

热门阅读

  1. leetcode 1514.概率最大的路径

    2024-06-09 20:22:02       11 阅读
  2. C语言中的变量和常量是什么,以及它们的区别

    2024-06-09 20:22:02       8 阅读
  3. cocos入门8:向量叉乘

    2024-06-09 20:22:02       9 阅读
  4. Mybatis-plus 自动填充字段

    2024-06-09 20:22:02       12 阅读
  5. 345_C++_共享缓冲区管理类shared_buffer

    2024-06-09 20:22:02       12 阅读