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

铜山区建设局局网站网站的规划和建设

铜山区建设局局网站,网站的规划和建设,经营网站挣钱,国外用python做的网站#x1f34e; 博客主页#xff1a;#x1f319;披星戴月的贾维斯 #x1f34e; 欢迎关注#xff1a;#x1f44d;点赞#x1f343;收藏#x1f525;留言 #x1f347;系列专栏#xff1a;#x1f319; 蓝桥杯 #x1f319;我与杀戮之中绽放#xff0c;亦如黎明的花… 博客主页披星戴月的贾维斯 欢迎关注点赞收藏留言 系列专栏 蓝桥杯 我与杀戮之中绽放亦如黎明的花朵 一起加油去追寻、去成为更好的自己 蓝桥杯倒计时 41天 文章目录、双指针算法、例题分析、AcWing字符串删减、AcWing最长连续不重复子序列、AcWing数组元素的目标和、AcWing判断子序列、总结提示以下是本篇文章正文内容下面案例可供参考 、双指针算法 、双指针算法的简单概念 双指针算法是一种通过设置两个指针不断进行单向移动来解决问题的算法。 、双指针算法的两个应用场景 两个指针i, j分别指向不同的序列。比如归并排序的合并过程。 两个指针i, j指向同一个序列。比如快速排序的划分过程。 、双指针算法的核心作用 将O(N^2)的时间复杂度优化成为O(N)相当于去掉了一层for循环。 、双指针算法的通用模板 for (int i 0, j 0; i n; i) {while (j i check(i, j)) j;// 每道题目的具体逻辑 }双指针算法为什么能优化掉一层for循环 因为原来循环两次i,j我们是通过回溯的方式来实现遍历的即原来的内层循环j不满足条件时i, j 0开始循环。而双指针算法i, j都是具有单调性的一般是单调递增因此时间复杂度最多是O(n m)。 、例题分析 、AcWing字符串删减 本题链接: 字符串删减 简单分析题意对于长度为n的字符串我们删除一些字母使字符串中没用三个或者三个以上的连续的’x’,通过反证法我们可以得出在最优解中一定不会删掉’x’以外的字母。设置一个cnt 0, 来计算每一段x出现的次数,cnt 3, 操作次数 0 从cnt 3 ,要操作2次 双指针代码示例 #includeiostream #includealgorithm #includestring using namespace std; string str; int n; int main () {cin n str;int cnt 0, res 0;for(int i 0; i n; i)if(str[i] x){int j i 1;while(j n str[j] x) j;res max(j - i -2, 0);//如果长度小于0就和0取max,精妙的推算i j - 1;// i是要跳到j的位置但是i待会会,所以i j - 1}cout res endl;return 0;}模拟代码 #includeiostream #includealgorithm #includestring using namespace std; string str; int n; int main () {cin n str;int cnt 0, res 0;for(int i 0; i n; i)if(str[i] x){cnt;if(cnt 3){cnt - 1;res;}}else cnt 0;cout res endl;return 0;}、AcWing最长连续不重复子序列 本题链接: 最长连续不重复子序列 简单分析思路 代码示例 #includeiostream #includealgorithm using namespace std; const int N 1e510; int s[N],a[N]; int n; int main() {int res 0;cin n;for(int i 0; i n; i) cin a[i];for(int i 0, j 0; i n;i){s[a[i]];while(j i s[a[i]] 1){s[a[j]]--;j;}res max(res, i - j 1);}cout res endl;return 0; }、AcWing数组元素的目标和 本题链接: 数组元素的目标和 简单分析思路本题属于两个指针i, j分别指向不同的序列。如果a[i] b[j] x时输出i和j我们从前往后枚举i从后往前枚举j如果两者的和x就j–,如果刚好等于就输出break如果小于就i。 代码示例 #includeiostream #includealgorithm using namespace std;const int N 1e5 10; int a[N], b[N]; int n, m, x; int main () {cin n m x;for(int i 0; i n; i) cin a[i];for(int i 0; i m; i) cin b[i];for(int i 0, j m - 1; i n; i){while(a[i] b[j] x j 0){j--;}if(a[i] b[j] x){cout i j endl;break;}}return 0; }、AcWing判断子序列 本题链接: 判断子序列 代码示例 #includeiostream #includealgorithm using namespace std; const int N 1e6 10; int a[N], b[N]; int n, m; int main () {cin n m;for(int i 0; i n; i) cin a[i];for(int i 0; i m; i) cin b[i];int i 0, j 0;while(i n j m){if(a[i] b[j]) i;j;}if(i n) printf(Yes);else printf(No);return 0; }、总结 本文简要介绍了双指针的简要概念和几道双指针的经典例题希望大家读后能有所收获
http://www.hkea.cn/news/14498554/

相关文章:

  • 怎么把个人做的网站上传到网上企业管理工具
  • 徐州模板建站定制网站wordpress钩子介绍
  • 西安建设厅网站ui设计是什么专业学科
  • 丹阳建设局官方网站wordpress 2018
  • 网站界面设计的流程山东港基建设集团网站
  • 杭州 网站设计制作wordpress 语录小程序
  • 摄影师常用的网站为什么做企业网站
  • 投资者网站建设动画制作器
  • 怎么看网站pr值自己开发一个手机网站
  • 查看网站是哪个公司做的文职人员招聘2023官网
  • 深圳网站建设网站优化服务网络运营需要什么学历
  • 做厂房的网站网站活动模板
  • winscp怎么做网站官方网站管理办法
  • 网站开发角色分配权限网站建设文化公司
  • 繁体企业网站源码wordpress影视主题模板免费下载
  • 住房与城乡建设部网站特色小镇莱芜市在线论坛话题
  • 临汾网站建设销售php网站开发工作描述
  • 建设网站需要的资金清单上传网站
  • 上海网站建设高端什么是网络设计方案
  • 一个人开公司做网站wordpress在哪里修改
  • 论坛门户网站开发彬县网站建设
  • 做网站通过什么赚钱微信商家怎么开通
  • 用易语言做攻击网站软件下载数码设计网站
  • 信誉好的菏泽网站建设西安产品设计公司
  • 响应式门户网站模板西安网站开发公司有哪家
  • 做网站备案成功后怎么办横沥建设网站
  • 找个网站这么难2021wordpress文件发送邮件
  • 电子商务网站建设合同样本优秀的ui设计案例分析
  • 那个网站做排列五头比较准网站建设与网页设计...
  • 南城免费做网站怎样自己做刷赞网站