福建中江建设公司网站手机会员卡管理系统

news/2025/10/5 14:09:47/文章来源:
福建中江建设公司网站,手机会员卡管理系统,有没有免费做编辑网站管理系统,建影楼网站多少钱文章目录 写在前面Tag题目来源题目解题解题思路方法一#xff1a;双指针方法二#xff1a;动态规划 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法#xff0c;两到三天更新一篇文章#xff0c;欢迎催更…… 专栏内容以分析题目为主#xff0c;并附带一些对… 文章目录 写在前面Tag题目来源题目解题解题思路方法一双指针方法二动态规划 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法两到三天更新一篇文章欢迎催更…… 专栏内容以分析题目为主并附带一些对于本题涉及到的数据结构等内容进行回顾与总结文章结构大致如下部分内容会有增删 Tag介绍本题牵涉到的知识点、数据结构题目来源贴上题目的链接方便大家查找题目并完成练习题目解读复述题目确保自己真的理解题目意思并强调一些题目重点信息解题思路介绍一些解题思路每种解题思路包括思路讲解、实现代码以及复杂度分析知识回忆针对今天介绍的题目中的重点内容、数据结构进行回顾总结。 Tag 【双指针】【动态规划】【字符串】 题目来源 392. 判断子序列 题目解题 判断字符串 s 是不是字符串 t 的子序列字符串的子序列指的是原字符串删除一些字符或者不删除字符但是不改变原来字符顺序而形成的新的字符串。 解题思路 方法一双指针 我们使用两个指针 i 和 j初始化分别指向字符串 s 和 t 的初始位置。从前往后对 s[i] 和 t[j] 进行匹配 如果 s[i] t[j]则同时向右移动双指针如果 s[i] ! t[j]则只移动指向字符串字符的指针 j无论是否匹配都需要移动 j 指针最终如果 i 移动到了字符串 s 的末尾说明 s 是 t 的子序列。 实现代码 class Solution { public:bool isSubsequence(string s, string t) {int i 0, j 0;int n s.size(), m t.size();while(i n j m) {if(s[i] t[j])i;j;}return i n;} };复杂度分析 时间复杂度 O ( n m ) O(nm) O(nm) n n n 为 s 的长度 m m m 为 t 的长度。无论匹配是否成功都至少youyige有一个指针向右移动两指针的移动总距离为 n m nm nm。 空间复杂度 O ( 1 ) O(1) O(1)仅仅使用了两个指针变量。 方法二动态规划 方法一有可以进行优化的地方在方法一中我们需要枚举匹配 t 中的字符如果 t 中不匹配的字符很长我们会有大量的时间浪费在 t 中找下一个匹配的字符。 于是我们可以先对字符串 t 进行预处理记录从每个位置开始往后每一个字符第一次出现的位置。 状态 f[i][j] 表示字符串 t 中从位置 i 开始往后字符 j 第一次出现的位置。 状态转移 有如下的状态转移关系 如果 t[i] j那么 f[i][j] i否则f[i][j] f[i1][j]。 根据以上转移关系我们需要对字符串 t 从后往前进行动态规划。 base case 我们的边界状态为 f[m-1][...]我们置 f[m][...] m让 f[m-1][...] 正常转移如果 f[i][j] m则表示从位置 i 开始往后不存在字符 j。 我们通过 f 数组可以快速定位到字符串 t 后面每一个第一次出现的字符s 中的字符 如果 f[i][j] m则表示从字符串 t 位置 i 开始往后不存在 s 中的字符 j则直接返回 false否则更新 i从新的位置开始定位 s 中的字符如果一直没遇到 m最后返回 true。 方法二使用动态规划的方法对字符串 t 进行一次处理可以大大提高匹配也是 进阶 题目的一种解法。 实现代码 class Solution { public:bool isSubsequence(string s, string t) {int n s.size(), m t.size();vectorvectorint f(m1, vectorint(26, 0));for (int i 0; i 26; i) {f[m][i] m;}for (int i m-1; i 0; --i) {for (int j 0; j 26; j) {if (t[i] j a) {f[i][j] i;}else f[i][j] f[i1][j];}}int start 0;for (int i 0; i n; i) {if (f[start][s[i] - a] m)return false;start f[start][s[i] - a] 1;}return true;} }; 复杂度分析 时间复杂度 O ( m × ∣ ∑ ∣ n ) O(m \times \left| \sum \right| n) O(m×∣∑∣n) n n n 为字符串 s 的长度m 为字符串 t 的长度 ∣ ∑ ∣ \left| \sum \right| ∣∑∣ 为字符集 ∣ ∑ ∣ 26 \left| \sum \right| 26 ∣∑∣26。 空间复杂度 O ( m × ∣ ∑ ∣ ) O( m \times \left| \sum \right|) O(m×∣∑∣)使用的额外空间为对字符串 t 预处理所占用的空间。 写在最后 如果文章内容有任何错误或者您对文章有任何疑问欢迎私信博主或者在评论区指出 。 如果大家有更优的时间、空间复杂度方法欢迎评论区交流。 最后感谢您的阅读如果感到有所收获的话可以给博主点一个 哦。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/928324.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

对于做网站有什么要求wordpress恢复主题

一、fprintf 函数描述 fprintf其作用是格式化打印,也叫格式化输出,可以指定输出到一个流文件中,即相输出流中写入数据。fprintf()函数根据指定的格式(format),向输出流(stream)写入数据(argument)。fprintf( )会根据参数format 字…

Java求职面试:从Spring到微服务的技术挑战 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

做团购网站需要什么威海网站建设威海

SpringBoot教程(十五) | SpringBoot集成RabbitMq RabbitMq是我们在开发过程中经常会使用的一种消息队列。今天我们来研究研究rabbitMq的使用。 rabbitMq的官网: rabbitmq.com/ rabbitMq的安装这里先略过,因为我尝试了几次都失败了,后面等我…

2025CSP-S模拟赛59 比赛总结

2025CSP-S模拟赛59T1 T2 T3 T480 WA 20 WA 0 TLE 20 WA总分:120;排名:6/25。 这场比较刺激。T1 其实 A 了,但是忘记特判 \(n=1\) 挂了 20pts。

MCP协议重构AI Agent生态:万能插槽如何终结器具孤岛?

MCP协议重构AI Agent生态:万能插槽如何终结器具孤岛?pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&q…

没有网站 可以做cpa高端品牌运动鞋

热点随笔: [歪谈]员工(人才),留得住是因为本身就留得住;留不住的,你永远留不住(沈逸) 离开北京之前我把过去四年做过的项目的全部源码公开了、需要的联系我、不需要的也欢迎喷水(Suzuki.kakeru) 关于公司…

佛山专业网站建设团队wordpress 分页404

自动登录脚本参考scrapy爬虫启示录-小伙子老夫看你血气方刚这本《爬虫秘录》就传给你了Scrapy初章-Scrapy理论简介Scrapy次章-啥也不干就是爬图Scrapy第四章-设置代理IP偷偷爬图Scrapy第三章-图片存库MysqlScrapy第五章-多线程加速爬图Scrapy终章-1024福利Scrapy最最最终章-搂一…

管理网站怎么做的网站开发都做些什么

据相关研究报告表明,在众多人工智能落地产品或者应用场景中,智能语音机器人无论从产品的成熟度还是应用的广泛度来说,都是人工智能行业最热门和最有前景的产品。智能语音机器人并不只是一款产品,它是所有智能语音系列产品的统称&a…

濮阳中强网站建设dnf怎么做盗号网站

前几天跟一个做培训的朋友喝茶,聊天期间我问他们公司主要做哪些方面的培训,他笑着说他们公司的业务范围可广了,IT培训,MBA考辅,婴幼儿教育,英语培训......言语中流露出无比的自豪,我最后问了一句…

Principal v6.15 中文汉化版安装教程|Mac .dmg 文件安装步骤详解

Principal v6.15 中文汉化版安装教程|Mac .dmg 文件安装步骤详解​Principal​ 是一款功能实用的 ​Mac 平台工具软件​(具体用途可能因版本不同有所区别,常见于效率工具、系统辅助、设计相关或其他专业用途,根据实…

vulkan游戏引擎的vulkan_utils实现 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

百度自己网站排名公司网站 域名 cn com

转载于:https://www.cnblogs.com/studybrother/p/10109433.html

北京易思腾网站建设博兴县建设局官方网站

目录 1. 系统级编程 2. 游戏开发 3. 嵌入式系统 4. 大数据处理 5. 金融和量化分析 6. 人工智能和机器学习 7. 网络和通信 结语 C是一种多范式编程语言,具有高性能、中级抽象能力和面向对象的特性。由Bjarne Stroustrup于1979年首次设计并实现,C在…

【LUT技术专题】图像自适应3DLUT - 指南

【LUT技术专题】图像自适应3DLUT - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Mo…

深入解析:基于51单片机的音乐盒键盘演奏proteus仿真

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

网站搭建大型公司企业电话查询黄页

目录 set 1基本用法 2Set 实例的属性和方法 3遍历操作 3.1 keys() , values() , entries() 3.2 forEach() 3.3遍历的应用 weakset 含义 语法 总结 set 1基本用法 ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一…

完整教程:AugmentFree:解除 AugmentCode 限制的终极方案 如何快速清理vscode和AugmentCode缓存—windows端

完整教程:AugmentFree:解除 AugmentCode 限制的终极方案 如何快速清理vscode和AugmentCode缓存—windows端pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; displa…

文件的物理结构II

索引分配 允许文件离散地分配在各磁盘块中,系统会为每一个文件建一张索引表 表中记录了文件的哥哥逻辑块对应的物理快 索引表中存放的磁盘块叫索引块 文件数据存放的磁盘块叫数据块 类似于页表 索引分配方式可以支持随…

白城网站建设哪家好金华百度推广公司

http状态码 后端调试 f8:逐行执行 f7:进入语句内部 f9:执行到下一个断点 前端调试 f10:逐行调试 f11:进入语句内部 f8:执行到下一个断点 日志 按照级别开启日志 日志的测试类 比如把application里…

03-delphi10.3下PDFium5.8的PdfView1显示相关

03-delphi10.3下PDFium5.8的PdfView1显示相关procedure TForm2.Button3Click(Sender: TObject); //正常显示 beginPdfView1.Width:= 420;PdfView1.Height:=594; end;procedure TForm2.Button4Click(Sender: TOb…