学什么可以做视频网站网站开发设计的技术路线

bicheng/2026/1/21 15:10:23/文章来源:
学什么可以做视频网站,网站开发设计的技术路线,建筑网下载,建设的比较好的档案馆网站文章目录 一、583、两个字符串的删除操作二、72、编辑距离三、完整代码 所有的LeetCode题解索引#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、583、两个字符串的删除操作 思路分析#xff1a;本题的思路和115、不同的子序列差不多#xff0c;只是变成… 文章目录 一、583、两个字符串的删除操作二、72、编辑距离三、完整代码 所有的LeetCode题解索引可以看这篇文章——【算法和数据结构】LeetCode题解。 一、583、两个字符串的删除操作 思路分析本题的思路和115、不同的子序列差不多只是变成了两个字符串都能删除字符。 第一步动态数组的含义。 d p [ i ] [ j ] dp[i][j] dp[i][j]代表使得 w o r d 1 [ 0 , i − 1 ] word1[0, i-1] word1[0,i−1]和 w r o d 2 [ 0 , j − 1 ] wrod2[0, j-1] wrod2[0,j−1]相等所需删除的最小步数。第二步递推公式。 d p [ i ] [ j ] dp[i][j] dp[i][j]可以由两种情况推导出来 w o r d 1 [ i − 1 ] word1[i - 1] word1[i−1]与 w o r d 2 [ j − 1 ] word2[j - 1] word2[j−1]相同那么最小步数和使得 w o r d 1 [ 0 , i − 2 ] word1[0, i-2] word1[0,i−2]和 w r o d 2 [ 0 , j − 2 ] wrod2[0, j-2] wrod2[0,j−2]相等所需删除的最小步数相同。 d p [ i ] [ j ] d p [ i − 1 ] [ j − 1 ] dp[i][j] dp[i-1][j-1] dp[i][j]dp[i−1][j−1]。 w o r d 1 [ i − 1 ] word1[i - 1] word1[i−1]与 w o r d 2 [ j − 1 ] word2[j - 1] word2[j−1]不相同这种情况的 d p [ i ] [ j ] dp[i][j] dp[i][j]可以由三部分构成若 w o r d 1 [ 0 , i − 2 ] word1[0, i - 2] word1[0,i−2]和 w o r d 2 [ 0 , j − 1 ] word2[0, j - 1] word2[0,j−1]做了 d p [ i − 1 ] [ j ] dp[i - 1][j] dp[i−1][j]次删除操作以后会相等那么再删除 w o r d 1 [ i − 1 ] word1[i - 1] word1[i−1]以后又可以相等即 d p [ i ] [ j ] d p [ i − 1 ] [ j ] 1 dp[i][j] dp[i - 1][j] 1 dp[i][j]dp[i−1][j]1若 w o r d 1 [ 0 , i − 1 ] word1[0, i - 1] word1[0,i−1]和 w o r d 2 [ 0 , j − 2 ] word2[0, j - 2] word2[0,j−2]做了 d p [ i ] [ j − 1 ] dp[i][j - 1] dp[i][j−1]次删除操作以后会相等那么再删除 w o r d 2 [ j − 1 ] word2[j - 1] word2[j−1]以后又可以相等即 d p [ i ] [ j ] d p [ i ] [ j − 1 ] 1 dp[i][j] dp[i][j - 1] 1 dp[i][j]dp[i][j−1]1。因为要求最小步数那么我们对两项取最小 d p [ i ] [ j ] m i n ( d p [ i − 1 ] [ j ] 1 , d p [ i ] [ j − 1 ] 1 ) dp[i][j] min(dp[i - 1][j] 1, dp[i][j - 1] 1) dp[i][j]min(dp[i−1][j]1,dp[i][j−1]1)。 if (word1[i - 1] word2[j - 1]) dp[i][j] dp[i - 1][j - 1];else dp[i][j] min(dp[i - 1][j], dp[i][j - 1]) 1;第三步元素初始化。 d p [ i ] [ 0 ] dp[i][0] dp[i][0]第一列表示字符串 w o r d 1 [ 0 , i − 1 ] word1[0, i-1] word1[0,i−1]变成空字符串需要删除的最小字符个数。 d p [ 0 ] [ j ] dp[0][j] dp[0][j]第一行表示 w o r d 2 [ 0 , j − 1 ] word2[0, j-1] word2[0,j−1]变成空字符串需要删除的最小字符个数。其中空字符串word1变成空字符串word2的个数为0。那么 d p [ 0 ] [ 0 ] 0 , d p [ i ] [ 0 ] i , d p [ 0 ] [ j ] j dp[0][0]0, dp[i][0] i, dp[0][j] j dp[0][0]0,dp[i][0]i,dp[0][j]j。 for (int i 1; i word1.size(); i) dp[i][0] i; // 第一列初始化为ifor (int j 1; j word2.size(); j) dp[0][j] j; // 第一行初始化为i第四步递归顺序。一共有两层循环从前往后进行遍历。第五步打印结果。 程序如下 // 583、两个字符串的删除操作-动态规划 class Solution { public:int minDistance(string word1, string word2) {vectorvectoruint64_t dp(word1.size() 1, vectoruint64_t(word2.size() 1, 0)); // dp[0][0]为0for (int i 1; i word1.size(); i) dp[i][0] i; // 第一列初始化为ifor (int j 1; j word2.size(); j) dp[0][j] j; // 第一行初始化为ifor (int i 1; i word1.size(); i) {for (int j 1; j word2.size(); j) {if (word1[i - 1] word2[j - 1]) dp[i][j] dp[i - 1][j - 1];else dp[i][j] min(dp[i - 1][j], dp[i][j - 1]) 1;}}return dp[word1.size()][word2.size()];} };复杂度分析 时间复杂度 O ( n ∗ m ) O(n*m) O(n∗m) n n n和 m m m分别是两个字符串的长度。空间复杂度 O ( n ∗ m ) O(n*m) O(n∗m)。 二、72、编辑距离 思路分析本题在583题的基础之上加入了插入和替换操作。我们同样用动态规划的方法分析。 第一步动态数组的含义。 d p [ i ] [ j ] dp[i][j] dp[i][j]代表使得 w o r d 1 [ 0 , i − 1 ] word1[0, i-1] word1[0,i−1]和 w r o d 2 [ 0 , j − 1 ] wrod2[0, j-1] wrod2[0,j−1]相等所需的最小操作数。第二步递推公式。 d p [ i ] [ j ] dp[i][j] dp[i][j]可以由两种情况推导出来 w o r d 1 [ i − 1 ] word1[i - 1] word1[i−1]与 w o r d 2 [ j − 1 ] word2[j - 1] word2[j−1]相同那么最小操作数和使得 w o r d 1 [ 0 , i − 2 ] word1[0, i-2] word1[0,i−2]和 w r o d 2 [ 0 , j − 2 ] wrod2[0, j-2] wrod2[0,j−2]相等所需的最小操作数相同。 d p [ i ] [ j ] d p [ i − 1 ] [ j − 1 ] dp[i][j] dp[i-1][j-1] dp[i][j]dp[i−1][j−1]。 w o r d 1 [ i − 1 ] word1[i - 1] word1[i−1]与 w o r d 2 [ j − 1 ] word2[j - 1] word2[j−1]不相同这种情况的 d p [ i ] [ j ] dp[i][j] dp[i][j]可以由三部分构成增加、删除和替换。删除部分和583题一致 d p [ i ] [ j ] m i n ( d p [ i − 1 ] [ j ] 1 , d p [ i ] [ j − 1 ] 1 ) dp[i][j] min(dp[i - 1][j] 1, dp[i][j - 1] 1) dp[i][j]min(dp[i−1][j]1,dp[i][j−1]1)。而增加字符和删除的操作数没有区别。若 w o r d 1 [ 0 , i − 2 ] word1[0, i - 2] word1[0,i−2]和 w o r d 2 [ 0 , j − 2 ] word2[0, j - 2] word2[0,j−2]做了 d p [ i − 1 ] [ j − 1 ] dp[i - 1][j - 1] dp[i−1][j−1]次删除操作以后会相等那么再替换 w o r d 1 [ i − 1 ] word1[i - 1] word1[i−1]或者 w o r d 2 [ j − 1 ] word2[j - 1] word2[j−1]之间任意一个元素以后又可以相等即 d p [ i ] [ j ] d p [ i − 1 ] [ j − 1 ] 1 dp[i][j] dp[i - 1][j - 1] 1 dp[i][j]dp[i−1][j−1]1。因为要求最小操作数那么我们对两项取最小 d p [ i ] [ j ] m i n ( d p [ i − 1 ] [ j ] 1 , d p [ i ] [ j − 1 ] 1 , d p [ i − 1 ] [ j − 1 ] 1 ) m i n ( d p [ i − 1 ] [ j ] , d p [ i ] [ j − 1 ] , d p [ i − 1 ] [ j − 1 ] ) 1 dp[i][j] min(dp[i - 1][j] 1, dp[i][j - 1] 1, dp[i - 1][j - 1] 1) min(dp[i - 1][j], dp[i][j - 1], dp[i - 1][j - 1]) 1 dp[i][j]min(dp[i−1][j]1,dp[i][j−1]1,dp[i−1][j−1]1)min(dp[i−1][j],dp[i][j−1],dp[i−1][j−1])1。 if (word1[i - 1] word2[j - 1]) dp[i][j] dp[i - 1][j - 1];//else dp[i][j] min(min(dp[i - 1][j], dp[i][j - 1]), dp[i - 1][j - 1]) 1; // min()函数只接受两个参数或者数组else dp[i][j] min({ dp[i - 1][j], dp[i][j - 1], dp[i - 1][j - 1] }) 1;第三步元素初始化。 d p [ i ] [ 0 ] dp[i][0] dp[i][0]第一列表示字符串 w o r d 1 [ 0 , i − 1 ] word1[0, i-1] word1[0,i−1]变成空字符串需要的最少操作数。 d p [ 0 ] [ j ] dp[0][j] dp[0][j]第一行表示 w o r d 2 [ 0 , j − 1 ] word2[0, j-1] word2[0,j−1]变成空字符串需要的最少操作数。其中空字符串word1变成空字符串word2的个数为0。那么 d p [ 0 ] [ 0 ] 0 , d p [ i ] [ 0 ] i , d p [ 0 ] [ j ] j dp[0][0]0, dp[i][0] i, dp[0][j] j dp[0][0]0,dp[i][0]i,dp[0][j]j。 for (int i 1; i word1.size(); i) dp[i][0] i; // 第一列初始化为ifor (int j 1; j word2.size(); j) dp[0][j] j; // 第一行初始化为i第四步递归顺序。一共有两层循环从前往后进行遍历。第五步打印结果。 程序如下 // 72、编辑距离-动态规划 class Solution2 { public:int minDistance(string word1, string word2) {vectorvectorint dp(word1.size() 1, vectorint(word2.size() 1, 0)); // dp[0][0]为0for (int i 1; i word1.size(); i) dp[i][0] i; // 第一列初始化为ifor (int j 1; j word2.size(); j) dp[0][j] j; // 第一行初始化为ifor (int i 1; i word1.size(); i) {for (int j 1; j word2.size(); j) {if (word1[i - 1] word2[j - 1]) dp[i][j] dp[i - 1][j - 1];//else dp[i][j] min(min(dp[i - 1][j], dp[i][j - 1]), dp[i - 1][j - 1]) 1; // min()函数只接受两个参数或者数组else dp[i][j] min({ dp[i - 1][j], dp[i][j - 1], dp[i - 1][j - 1] }) 1;}}return dp[word1.size()][word2.size()];} };复杂度分析 时间复杂度 O ( n ∗ m ) O(n*m) O(n∗m) n n n和 m m m分别是两个字符串的长度。空间复杂度 O ( n ∗ m ) O(n*m) O(n∗m)。 三、完整代码 # include iostream # include vector # include string using namespace std;// 583、两个字符串的删除操作-动态规划 class Solution { public:int minDistance(string word1, string word2) {vectorvectoruint64_t dp(word1.size() 1, vectoruint64_t(word2.size() 1, 0)); // dp[0][0]为0for (int i 1; i word1.size(); i) dp[i][0] i; // 第一列初始化为ifor (int j 1; j word2.size(); j) dp[0][j] j; // 第一行初始化为ifor (int i 1; i word1.size(); i) {for (int j 1; j word2.size(); j) {if (word1[i - 1] word2[j - 1]) dp[i][j] dp[i - 1][j - 1];else dp[i][j] min(dp[i - 1][j], dp[i][j - 1]) 1;}}return dp[word1.size()][word2.size()];} };// 72、编辑距离-动态规划 class Solution2 { public:int minDistance(string word1, string word2) {vectorvectorint dp(word1.size() 1, vectorint(word2.size() 1, 0)); // dp[0][0]为0for (int i 1; i word1.size(); i) dp[i][0] i; // 第一列初始化为ifor (int j 1; j word2.size(); j) dp[0][j] j; // 第一行初始化为ifor (int i 1; i word1.size(); i) {for (int j 1; j word2.size(); j) {if (word1[i - 1] word2[j - 1]) dp[i][j] dp[i - 1][j - 1];//else dp[i][j] min(min(dp[i - 1][j], dp[i][j - 1]), dp[i - 1][j - 1]) 1; // min()函数只接受两个参数或者数组else dp[i][j] min({ dp[i - 1][j], dp[i][j - 1], dp[i - 1][j - 1] }) 1;}}return dp[word1.size()][word2.size()];} };int main() {//string word1 sea, word2 eat; // 测试案例//Solution s1;//int result s1.minDistance(word1, word2);string word1 horse, word2 ros; // 测试案例Solution2 s1;int result s1.minDistance(word1, word2);cout result endl;system(pause);return 0; }end

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

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

相关文章

vs设置网站开发环境廉政网站建设

文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通…

商标设计网站排行lamp 安装wordpress

在使用layui的form表单提交以后,请求状态总是canceled。后来在form表单的后面添加了一行代码: return false; 就可以了。 文档:https://www.layui.com/doc/modules/form.html#onsubmit 错误: 解决方法: 总结一下&…

php语言的网站建设贵阳有做网站的公司吗

1.简介在我们开发高性能代码时,需要各种针对性能优化进行编码。那么如何才能知道我们所加的代码是否有性能方面的正向优化呢?有了BenchmarkDotNet,做性能对比测试就非常容易了,只需要把你的测试方法加上特性[Benchmark], 想做不同…

网站建设与网页制作模拟试题seo入门版

平台RK3568 基线 3.2 beta 在移植Harmonys的时候发现一个问题,就是开机正常显示,uboot和kernel正常,开机后灭屏,等待系统进入Deep ,然后按power按键唤醒设备。此时出现花屏或者不显示问题 多次测试发现,如…

简单的网站架构东莞房价2022最新楼盘消息

0x01 产品简介 Progress Kemp LoadMaster是一款高性能的应用交付控制器,具有可扩展性,支持实体硬件和虚拟机的负载均衡。它提供了当今应用服务所需的各种功能,包括深度用户验证、资安防护(如WAF/IPS/DDoS防护)以及零信…

c 做网站教程哪个网站做app

一:首先, C中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式). class CxString // 没有使用explicit关键…

网站流量分成asp网站查看器

来源: brainnews编辑部、inature编辑部来源:生物谷旗下细胞公众号,药明康德团队旗下学术经纬公众号Cell ,Nature和Science 三大期刊2020年年度最佳论文全部公布,brainnews编辑部摘选其中跟脑科学相关的文章,跟大家一起…

软件专业做学校网站论文怎么选题鞍山房产网

应届生求职面试注意事项 引言 对于即将毕业的应届生来说,进入职场是一个全新的挑战。在面对众多竞争者的情况下,成功通过面试是获得理想工作的关键一步。本文将介绍一些应届生求职面试的注意事项,帮助应届生更好地应对面试,提高…

石家庄站内换乘图解食品库存管理软件

目录 搜索与回溯 1222:放苹果 1221:分成互质组 1218:取石子游戏 数组 1126:矩阵转置 1127:图像旋转 1128:图像模糊处理 1120:同行列对角线的格 string 2046:【例5.15】替换…

南沙移动网站建设代理网址代码

引言: 新生儿夜惊是一种常见的现象,它可能让新父母感到焦虑和不安。夜惊通常表现为婴儿在夜间忽然惊醒、哭闹,并伴随着呼吸急促和肌肉紧张。尽管这在大多数情况下是正常的生理现象,但对于父母来说,了解夜惊的原因和适…

公司网站建设的费用浙江平湖建设局网站

使用ChatGPT创建Makefile构建系统:使用Make运行Docker 芯语芯愿(知乎/纷传/CSDN/);小石头的芯语芯愿(微信公众号) 开发高效现代的构建系统对于满足开发周期需求至关重要。原先,嵌入式开发者一…

深圳公司网站建设网页建设软件

目录 1.开发逻辑图及模块 2.编程实现语音和开发板通信 3.手机接入Linux热拔插相关,打开手机开发者模式允许USB调试 4.用shell指令来操作手机屏幕,模拟手动滑屏幕 5.最终主程序代码 1.开发逻辑图及模块 逻辑图: 模块 (1)语音…

宁波网站制作哪家优惠多中国物流企业网站建设问题

前面我们学习了单向链表,现在介绍单向循环链表,单向循环链表是单链表的一种改进,若将单链表的首尾节点相连,便构成单向循环链表结构,如下图: 对于一个循环链表来说,其首节点和末节点被连接在一起。这种方式…

雄县网站制作建设中心以前自己做的网站怎么样删除

近年来,随着经济不断发展、人们的收人水平不断提升、消费观念不断升级,我国已经进人消费转型升级阶段,对绿色消费方式与生活方式的培育产生了积极的推动作用。研究发现,从2012年开始,虽然我国生产领域的资源环境绩效有…

招网站开发人员安平县做网站的有哪些

(改了标题吸引目标用户) 老师教课,学生上课,首先要讲明师生关系。 其次,就是要说明这门课的底线是什么。 我们假设所有人写作业都独立思考,认真实践,不断改进,勇于创新... 这个假设通常是不全面的&#xf…

什么是网站seo猪八戒兼职网

全世界只有3.14 % 的人关注了青少年数学之旅相信很多人都听过南北蟑螂的故事,即使是一个可以打死老虎的北方人在南方蟑螂面前也会惊慌失措。除此之外,我们日常生活里和蟑螂的故事还有很多,比如:当你打开灯的时候,会有一…

成都做公司网站推广十个实用网站网址

学习目标: 计算机网络 1.掌握计算机网络的基本概念、基本原理和基本方法。 2.掌握计算机网络的体系结构和典型网络协议,了解典型网络设备的组成和特点,理解典型网络设备的工作原理。 3.能够运用计算机网络的基本概念、基本原理和基本方法进行…

手机网站页面镇江网页设计实战班

常见面试题 1.微服务篇 1.1.SpringCloud常见组件有哪些? 问题说明:这个题目主要考察对SpringCloud的组件基本了解 难易程度:简单 参考话术: SpringCloud包含的组件很多,有很多功能是重复的。其中最常用组件包括&…

永久免费的网站空间朋友圈的链接推广如何制作

TextStyle中设置height参数即可 对齐的效果 Text的高度 是根据 height 乘于 fontSize 进行计算的、这里指定heiht即可、不指定的会出现 无法对齐的情况,如下: 这种就是无法对齐的情况

自建站怎么接入支付网站制作及管理教程

业务流程是一家医院运作的基础,医院所有业务都需要流程加以驱动。熟知医院各项业务,了解医院管理流程,有利于医院工作人员更好地投入自身岗位,提高工作效率。本文整理了常见医院业务运作及管理流程,仅供参考! 【门诊业务】 一、门诊业务的特点: 1.接诊病人多,就诊时…