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

东莞城乡建设网站asp 微信网站

东莞城乡建设网站,asp 微信网站,网站建设项目团队,铜陵专业网站制作公司本篇文章继续和大家一起刷算法题 第一题 题目链接 . - 力扣#xff08;LeetCode#xff09; 题目解析 题目要求#xff1a; 这是一个连续的子数组 计算子数组内元素的和#xff0c;若数组内元素的和符合 target的值并且该子数组的长度是最短的#xff0c;则返回…本篇文章继续和大家一起刷算法题 第一题 题目链接 . - 力扣LeetCode 题目解析 题目要求 这是一个连续的子数组 计算子数组内元素的和若数组内元素的和符合 target的值并且该子数组的长度是最短的则返回该长度 代码原理 原理一暴力枚举 原理二滑动窗口 代码编写 对应原理一 class Solution { public: int minSubArrayLen(int target, vectorint nums) { int len INT_MAX; for(int left 0; left nums.size(); left) { int sum 0; for(int right left; right nums.size(); right) { sum nums[right]; if(sum target) { len min(len, right - left 1); break; } } } if(len INT_MAX) { len 0; } return len; } }; 这里值得注意的是暴力枚举会超过时间限制但并不是说这种方法是错误的 对应原理二 class Solution { public: int minSubArrayLen(int target, vectorint nums) { int left 0, right 0, sum 0, len INT_MAX; while(right nums.size()) { sum nums[right];//进窗口 while(sum target)//判断 {//4 len min(len, right 1 - left);//更新结果 sum - nums[left];//出窗口 } right;     } if(len INT_MAX) { len 0; } return len; } }; 本题总结 1. 首这个解法叫滑动窗口本质是同向双指针 2. 使用这个解法的原因是利用了单调性 3.滑动窗口的正确性利用的单调性规避了没必要的枚举行为 4.枚举二字算是在博主的文章中第一次出现那么我也解释枚举是什么意思枚举就是将每一种情况都一一列举出来 第二题 题目链接 3. 无重复字符的最长子串 - 力扣LeetCode 题目解析 题目要求返回字符串且字符串内的字符不能有相同 代码原理 方法二滑动窗口 总而言之如果nums[right]若与hash表中的字符相同则出窗即在哈希表中删除 代码编写 方法二滑动窗口 class Solution { public: int lengthOfLongestSubstring(string s) { int n s.size(),len 0; int hash[128] {0}; for(int left 0, right 0; right n; right) { hash[s[right]]; while(hash[s[right]] 1) { hash[s[left]]--; } len max(len, right - left 1); } return len; } }; 第三题 题目链接 数组中两个字符串的最小距离__牛客网 题目解析 代码原理 思路一暴力枚举 思路二贪心算法 代码编写 对应法二 #include iostream #includestring using namespace std; int main() {     int n 0;     int prev1 -1, prev2 -1,min_distance 0x3f3f3f3f;     cin n;     string strs, str1, str2;     cin str1 str2;     for(int i 0; i n; i)     {         cin strs;         if(strs str1)         {             if(prev2 ! -1)             {                 min_distance min(min_distance, i - prev2);             }             prev1 i;         }         else if(strs str2)         {             if(prev1 ! -1)             {                 min_distance min(min_distance, i - prev1);             }             prev2 i;         }     }     if(min_distance 0x3f3f3f3f) cout -1 endl;     else cout min_distance endl; return 0; } // 64 位输出请用 printf(%lld) 本篇文章的算法题就先讲到这里我们下期文章再见。 都看到这了给个三联再走呗谢谢啦
http://www.hkea.cn/news/14490031/

相关文章:

  • 在网上做企业网站怎么做产品开发流程图
  • 为什么建网站中小企业网站建设应该注意什么事项
  • 珠宝网站形象设计网络营销的目的
  • 公司网站建设山东深圳专业做网站的公司
  • 吕梁网站制作上海城乡建设部网站首页
  • 重庆自助建站软件有wordpress
  • 教育网站建设需求分析报告前端开发的公司有哪些
  • 嵊州市住房和建设局网站免费做网站怎么做网站619
  • 网站布局建设沈阳网站建设与维护
  • 网站帮企业做推广价格怎么算莆田网站建设创意
  • 做网站推广需要多少钱开网店怎么开的
  • 移动网站建设查询职场seo是什么意思
  • 网站后台登录界面网站建设需要注意事项
  • 无二制造 网站升级建设中网站栏目结构包括哪些
  • 泰安个人代做网站自己制作广告
  • 门户网站建设工作情况汇报网站建设需求分析表怎么写
  • 自己怎样建网站沈阳市建设工程项目管理中心网站
  • 石家庄建立网站建设干部培训中心网站
  • 化妆品网站建设的目的如何建设一个人工智能网站
  • 网站制作技术介绍怎么做网站的后台维护
  • 电商网站功能介绍wordpress 浏览计数
  • 网站制作合肥沈阳互联网公司排名
  • 18款禁用网站app入口做网站app价格多少钱
  • 龙岩网站设计价格搜狗网址导航
  • 用wordpress制作网站网站标题如何修改
  • 购物网站建设的思路wordpress删除多余图片的插件
  • 物业建设网站南京网站优化工具
  • 云服务器如何安装网站网站优化 kps
  • 巩义市网站建设wordpress吃内存cpu
  • 流行的网站建设技术有哪些电子商务网站建设与管理的论文题目