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

网页制作中网站名称怎么做优客逸家网站源码

网页制作中网站名称怎么做,优客逸家网站源码,在线ps网站,wordpress标签页面跳转本文属于「征服LeetCode」系列文章之一#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁#xff0c;本系列将至少持续到刷完所有无锁题之日为止#xff1b;由于LeetCode还在不断地创建新题#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章… 本文属于「征服LeetCode」系列文章之一这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁本系列将至少持续到刷完所有无锁题之日为止由于LeetCode还在不断地创建新题本系列的终止日期可能是永远。在这一系列刷题文章中我不仅会讲解多种解题思路及其优化还会用多种编程语言实现题解涉及到通用解法时更将归纳总结出相应的算法模板。 为了方便在PC上运行调试、分享代码文件我还建立了相关的仓库https://github.com/memcpy0/LeetCode-Conquest。在这一仓库中你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目归纳、通用解法总结等还可以看到原题出现频率和相关企业等重要信息。如果有其他优选题解还可以一同分享给他人。 由于本系列文章的内容随时可能发生更新变动欢迎关注和收藏征服LeetCode系列文章目录一文以作备忘。 你会得到一个字符串 s (索引从 0 开始)你必须对它执行 k 个替换操作。替换操作以三个长度均为 k 的并行数组给出indices, sources, targets。 要完成第 i 个替换操作: 检查 子字符串 sources[i] 是否出现在 原字符串 s 的索引 indices[i] 处。如果没有出现 什么也不做 。如果出现则用 targets[i] 替换 该子字符串。 例如如果 s abcd indices[i] 0 , sources[i] ab targets[i] eee 那么替换的结果将是 eeecd 。 所有替换操作必须 同时 发生这意味着替换操作不应该影响彼此的索引。测试用例保证元素间不会重叠 。 例如一个 s abc indices [0,1] sources [abbc] 的测试用例将不会生成因为 ab 和 bc 替换重叠。 在对 s 执行所有替换操作后返回 结果字符串 。 子字符串 是字符串中连续的字符序列。 示例 1 输入s abcd, indices [0,2], sources [a,cd], targets [eee,ffff] 输出eeebffff 解释 a 从 s 中的索引 0 开始所以它被替换为 eee。 cd 从 s 中的索引 2 开始所以它被替换为 ffff。示例 2 输入s abcd, indices [0,2], sources [ab,ec], targets [eee,ffff] 输出eeecd 解释 ab 从 s 中的索引 0 开始所以它被替换为 eee。 ec 没有从原始的 S 中的索引 2 开始所以它没有被替换。提示 1 s.length 1000k indices.length sources.length targets.length1 k 1000 indices[i] s.length1 sources[i].length, targets[i].length 50s 仅由小写英文字母组成sources[i] 和 targets[i] 仅由小写英文字母组成 解法 字符串哈希表模拟 设 s s s 长度为 n n n 创建一个长为 n n n 的 m a t c h I n d e x matchIndex matchIndex 列表初始化每个元素为 − 1 -1 −1 。 遍历每个替换操作。对于第 i i i 个替换操作如果从 indices [ i ] \textit{indices}[i] indices[i] 开始的字符串有前缀 sources [ i ] \textit{sources}[i] sources[i] 则可以替换成 target [ i ] \textit{target}[i] target[i] 。例如 sabcd s[1:]bcd 有前缀 bc 。此时记录 m a t c h I n d e x [ i n d i c e s [ i ] ] i matchIndex[indices[i]]i matchIndex[indices[i]]i 后面的 i i i 指的是 t a r g e t [ i ] target[i] target[i] 表示「从原串的 i n d i c e s [ i ] indices[i] indices[i] 位置开始要进行替换替换后从 s o u r c e s [ i ] sources[i] sources[i] 变为 t a r g e t s [ i ] targets[i] targets[i] 」。 然后遍历 m a t c h I n d e x matchIndex matchIndex 列表如果 m a t c h I n d e x [ i ] ≠ − 1 matchIndex[i] \ne -1 matchIndex[i]−1 说明要进行替换把 t a r g e t s [ m a t c h I n d e x [ i ] ] targets[matchIndex[i]] targets[matchIndex[i]] 加入答案然后 i i i 增加 s o u r c e s [ m a t c h I n d e x [ i ] ] sources[matchIndex[i]] sources[matchIndex[i]] 的长度否则说明无需替换把 s [ i ] s[i] s[i] 加入答案然后 i i i 加一。 class Solution { public:string findReplaceString(string s, vectorint indices, vectorstring sources, vectorstring targets) {string ans;int k indices.size(), n s.size();int matchIndex[n];memset(matchIndex, -1, sizeof(matchIndex));for (int i 0; i k; i) {int sn sources[i].size();bool isMatch true;for (int j indices[i]; j indices[i] sn; j) { // j为原串中的下标if (sources[i][j - indices[i]] ! s[j]) { // 某个字符不同isMatch false;break;}} // 如果子串出现在原串的indices[i]处则记录要用来替换的新串的下标if (isMatch) matchIndex[indices[i]] i;}for (int i 0; i n; i) {if (matchIndex[i] ! -1) { // 要进行替换int index matchIndex[i];ans targets[index];i indices[index] sources[index].size() - 1; // i要跳转到原串后面} else ans.push_back(s[i]);}return ans;} };复杂度分析 时间复杂度 O ( M N ) O(MN) O(MN)空间复杂度 O ( M N ) O(MN) O(MN)
http://www.ho-use.cn/article/10823220.html

相关文章:

  • 品牌网站官网创建wordpress小工具
  • 网站加急备案上海广告公司排名
  • 收到网站建设费分录天津微信小程序开发公司
  • 线上购物网站建设成本爱站网关键词挖掘查询工具
  • 变装小说 wordpress深圳网站优化网站
  • 图片背景在网站建设中搜索引擎竞价推广的优势
  • 网站备案帐号是什么情况企查查怎么精准找客户
  • 自己做培训需要网站吗网页制作教程案例
  • 浙江省建设厅信息中心网站下载做网站的软件
  • 浙江振升建设有限公司网站东莞外贸网站建设开发
  • 天津网站设计哪家公司好南昌网络排名优化
  • 做网站用什么插件网站需要服务器吗
  • 专业网站定制价格便宜单一产品企业或多元化产品企业的网站建设与策划有什么不同?
  • 汉滨区住房和城乡建设局网站网站开发环境配置
  • 普陀网站建设推广全民电竞app的制作公司
  • 专门做外贸机械的网站深圳网站建设相关推荐
  • 网站制作网页版宁波企业自助建站系统
  • 西安做网站印象网络招商网站建设全包
  • 站长工具seo综合查询怎么使用的网站首页建设建议
  • 广州网站改版哪家好wordpress关闭
  • 自己建网站好还是用淘宝做好浙江方远建设集团网站
  • 杭州网站制作蒙特php网站开发技术前景
  • 一个人只做网站的流程网站域名需icp备案
  • 网站设计的优化青岛网站设计多少钱
  • 网站侧边菜单网站优化北京如何联系?
  • 网站后缀cowordpress安全问题
  • 楚雄做网站四年级的简短新闻播报
  • 同心食品厂网站建设项目任务分解内蒙古网站制作
  • 鲜花电商网站开发班级网站建设模板
  • 资源优化网站排名用什么软件可以做网站动态