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

金华网站制作费用云浮网站建设

金华网站制作费用,云浮网站建设,网站开发哪里好,国内做家具外贸的网站系列综述#xff1a; #x1f49e;目的#xff1a;本系列是个人整理为了秋招面试的#xff0c;整理期间苛求每个知识点#xff0c;平衡理解简易度与深入程度。 #x1f970;来源#xff1a;材料主要源于【CodeTopHot200】进行的#xff0c;每个知识点的修正和深入主要参… 系列综述 目的本系列是个人整理为了秋招面试的整理期间苛求每个知识点平衡理解简易度与深入程度。 来源材料主要源于【CodeTopHot200】进行的每个知识点的修正和深入主要参考各平台大佬的文章其中也可能含有少量的个人实验自证。 结语如果有帮到你的地方就点个赞和关注一下呗谢谢 【C】秋招实习面经汇总篇 文章目录 基础知识概述 算法例题3. 无重复字符的最长子串239. 滑动窗口最大值76. 最小覆盖子串438. 找到字符串中所有字母异位词 参考博客 点此到文末惊喜↩︎ 基础知识 概述 作用 求解线性表数组/字符串中满足条件的连续子区间性质最长/最短等的相关问题通过复用子区间性质的计算结果从而减少循环层数降低时间复杂度 原理 当不满足条件的时候扩大窗口当满足条件之后减小窗口将条件进行使用bool函数封装构建基本算法框架 核心按照条件进行滑动和计算符合条件的窗口性质基本框架 解决的问题 给定一个线性表字符串、数组等一次遍历求满足指定条件的连续子部分 /* 滑动窗口算法框架 */ void slidingWindow(string s, string t) {// 参数的健壮性检查if (s.size() t.size()) return ;// 子区间性质的信息缓存unordered_mapchar, int need, window;for (char c : t) need[c];int valid 0; // 算法int left 0, right 0;while (right s.size()) {// c 是将移入窗口的字符char c s[right];// 右移窗口right;// 进行窗口内数据的一系列更新.../*** debug 输出的位置 ***/printf(window: [%d, %d)\n, left, right);/********************/// 判断左侧窗口是否要收缩while (window needs shrink) {// d 是将移出窗口的字符char d s[left];// 左移窗口left;// 进行窗口内数据的一系列更新...}} }算法例题 3. 无重复字符的最长子串 问题 给定一个字符串 s 请你找出其中不含有重复字符的 最长子串 的长度。 思路 滑动窗口 int Template(string s) {// 健壮性检查if(s.size() 0) return 0;// TODO记录窗口子区间性质int max_len 0;unordered_setchar windows;// 初始化int left 0, right 0;while (right s.size()) {// 缩小窗口while (windows.count(s[right]) ! 0){windows.erase(s[left]);left;} // 增大窗口windows.insert(s[right]);right;max_len max(max_len, right-left); // TODO更新子区间性质}return max_len; }239. 滑动窗口最大值 题目 class Solution { private:class MyQueue { //单调队列从大到小public:dequeint que; // 使用deque来实现单调队列// 每次弹出的时候比较当前要弹出的数值是否等于队列出口元素的数值如果相等则弹出。// 同时pop之前判断队列当前是否为空。void pop (int value) {if (!que.empty() value que.front()) {que.pop_front();}}// 如果push的数值大于入口元素的数值那么就将队列后端的数值弹出直到push的数值小于等于队列入口元素的数值为止。 // 这样就保持了队列里的数值是单调从大到小的了。void push (int value) {while (!que.empty() value que.back()) {que.pop_back();}que.push_back(value);}// 查询当前队列里的最大值 直接返回队列前端也就是front就可以了。int front() {return que.front();}}; public:vectorint maxSlidingWindow(vectorint nums, int k) {MyQueue que;vectorint result;for (int i 0; i k; i) { // 先将前k的元素放进队列que.push(nums[i]);}result.push_back(que.front()); // result 记录前k的元素的最大值for (int i k; i nums.size(); i) {que.pop(nums[i - k]); // 滑动窗口移除最前面元素que.push(nums[i]); // 滑动窗口前加入最后面的元素result.push_back(que.front()); // 记录对应的最大值}return result;} };76. 最小覆盖子串 题目 返回字符串 s 中包含字符串 t 的全部字符的最小窗口 思路 不断滑动增加窗口当窗口满足条件时开始收缩并记录窗口的起始位置和长度 string SlideWindow(string s, string t) {// 窗口性质need记录子串情况window记录合适窗口unordered_mapchar, int need, window; // need记录目标窗口状态window记录当前窗口状态for (char c : t) need[c]; // 子串中可能出现重复字母int valid 0; // 目标窗口和当前窗口符合字符的大小int start 0, len INT_MAX; // 符合条件子串的起始位置和长度// 初始化及滑动窗口算法int left 0, right 0;while (right s.size()) {char c s[right]; // c 是将移入窗口的字符right; // 右移窗口// 进行窗口内数据的一系列更新if (need.count(c)) {window[c];if (window[c] need[c])valid;}while (valid need.size()) { // TODO收缩条件// TODO更新结果记录if (right - left len) { start left;// 更新起始值len right - left;// 最小长度}// 收缩窗口char d s[left];left;// TODO收缩处理if (need.count(d)) {if (window[d] need[d])valid--;window[d]--;} }}// 返回最小覆盖子串return len INT_MAX ? : s.substr(start, len); }438. 找到字符串中所有字母异位词 问题 给定两个字符串 s 和 p找到 s 中所有 p 的 异位词 的子串返回这些子串的起始索引。异位词 指由相同字母重排列形成的字符串包括相同的字符串。 思路 快慢指针 交换 // 返回字符串 s 中包含字符串 t 的全部字符的最小窗口 string SlideWindow(string s, string t) {// need记录子串情况window记录合适窗口unordered_mapchar, int need, window;for (char c : t) need[c];int left 0, right 0;// 记录最小覆盖子串的起始索引及长度int start 0, len INT_MAX;int valid 0;while (right s.size()) {char c s[right]; // c 是将移入窗口的字符right; // 右移窗口// 进行窗口内数据的一系列更新if (need.count(c)) {window[c];if (window[c] need[c])valid;}while (valid need.size()) { // TODO收缩条件// TODO更新结果记录if (right - left len) { start left;// 更新起始值len right - left;// 最小长度}// 收缩窗口char d s[left];left;// TODO收缩处理if (need.count(d)) {if (window[d] need[d])valid--;window[d]--;} }}// 返回最小覆盖子串return len INT_MAX ? : s.substr(start, len); }少年我观你骨骼清奇颖悟绝伦必成人中龙凤。 不如点赞·收藏·关注一波 点此跳转到首行↩︎ 参考博客 labuladong的leetcode滑动窗口模板 codetop
http://www.yutouwan.com/news/355770/

相关文章:

  • 聊城哪里可以学网站建设呢上海网站建设流程
  • 网站设计分析怎么写网站运营与管理实验报告
  • 免费网站设计培训班wordpress 改模板目录
  • 建设商城网站费用设计公司职位
  • 怎样利用网站做引流青岛专业网站建设公司排名
  • 长春专业网站建设公司排名WordPress插件Discuz
  • 昭通昭阳区城乡建设管理局网站代理服务器地址怎么找
  • 马鞍山网站设计制作怎么做便民信息网站
  • 南山-网站建设信科网络wordpress video plugin
  • 在ppt里面做网站链接wordpress如何设置边栏
  • 施工程找工程做哪个网站好网站首页弹出公告模板
  • 传统文化网站设计天津品牌网站制作
  • 一个人是否可以做公司网站申请域名邮箱
  • 石家庄网站建设公司哪个好电子商务网站的建设与流程
  • 房山网站建设优化seo网站建设团队分工
  • ps做兼职在什么网站可以找到无锡做网站6
  • 杭州企业网站制作哪家好一个网站需要几个人
  • 网站百度指数app开发制定公司
  • 网站推广咋做的app下载推广
  • 宁波高新区建设局网站玉树wap网站建设公司
  • w78企业网站后台怎么做wordpress oss upload
  • 百度蜘蛛抓取新网站长沙营销策划公司排名
  • 上海网站网络科技有限公司做网站的优势有哪些
  • 提供网站建设出售网站开发最强工具
  • 前端自己写代码建网站要花多少钱凤凰手机网官网
  • 品牌网站建设保障大蝌蚪社联网站建设的目的
  • 域名申请后没有做网站胶州网站建设电话
  • 上海专业网站建设报化工企业建网站
  • 网站 关键词 挖掘上海中国建设银行网站
  • vuejs 可做网站吗增城网站建设价格