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

office做的网站企业网站制作哪家好

office做的网站,企业网站制作哪家好,懂做游戏钓鱼网站的,wordpress cue插件下载目录 题目描述 解题思路 代码分析 步骤说明 图解原理 优势分析 小结 码题目:LeetCode 242. 有效的字母组 题目描述 给定两个字符串 s 和 t,请判断是否为字母组(Anagram)。 如果 t 是通过打乱 s 的字符并重新排列所得到的…

目录

题目描述

解题思路

代码分析

步骤说明

图解原理

优势分析

小结


 

码题目:LeetCode 242. 有效的字母组

题目描述

给定两个字符串 st,请判断是否为字母组(Anagram)。

如果 t 是通过打乱 s 的字符并重新排列所得到的,那么它们是字母组。

例如:

输入: s = "anagram", t = "nagaram"
输出: true输入: s = "rat", t = "car"
输出: false

 


解题思路

我们需要确认两个字符串是否含有相同的字符,并且各字母出现的次数也相同。

这里使用 JavaScript 中的 Map 类型来统计字母的出现次数是非常有效的方法。

 


代码分析

var isAnagram = function (s, t) {if (s.length !== t.length) return false;const map = new Map();for (let i = 0; i < s.length; i++) {map.set(s[i], (map.get(s[i]) || 0) + 1);map.set(t[i], (map.get(t[i]) || 0) - 1);}return Array.from(map.values()).every((value) => value === 0);
};

步骤说明

  1. 长度判断:如果 st 的长度不等,直接返回 false

  2. Map 统计

    • 通过 for 循环,同时遍历 s[i]t[i]

    • s[i] 的计数 +1t[i] 的计数 -1

    • 如果是字母组,那么最后 Map 里所有值必然是 0

  3. 结果判断:判断 Map 所有 value 是否都等于 0,如果是,则返回 true,否则返回 false


图解原理

s = "anagram", t = "nagaram" 为例,观看 Map 如何变化:

第 1 次:s[0] = 'a' → map[a] = 1t[0] = 'n' → map[n] = -1第 2 次:s[1] = 'n' → map[n] = 0t[1] = 'a' → map[a] = 0第 3 次:s[2] = 'a' → map[a] = 1t[2] = 'g' → map[g] = -1第 4 次:s[3] = 'g' → map[g] = 0t[3] = 'a' → map[a] = 0第 5 次:s[4] = 'r' → map[r] = 1t[4] = 'r' → map[r] = 0第 6 次:s[5] = 'a' → map[a] = 1t[5] = 'a' → map[a] = 0第 7 次:s[6] = 'm' → map[m] = 1t[6] = 'm' → map[m] = 0

最终 map = {a:0, n:0, g:0, r:0, m:0} → 全部值为 0,说明是字母组


优势分析

  • 时间复杂度: O(n)

  • 空间复杂度: O(1)(因为最多字母数量是有限的)

此算法方案相比直接排序字符串后比较的方法而言,更加高效。


小结

该题目是实际中常见的字符组合问题,本解法利用 Map 展现了非常高效的计数思路。推荐在做类似字符组问题时使用。

http://www.dtcms.com/wzjs/170239.html

相关文章:

  • 贸易有限公司seo诊断网站
  • mugeda做网站大连谷歌seo
  • 微商城网站建设价位新媒体运营怎么自学
  • 婚纱摄影网站建设方案网络服务提供商
  • 信丰网站制作上海发布微信公众号
  • 网站后台管理软件seo优化效果怎么样
  • 建设婚恋网站基本功能有哪些北京疫情太严重了
  • 做传单网站亿速云
  • 做招聘网站线上营销有哪些
  • 网站建设柒首先金手指8下载百度安装到桌面
  • 做的很好的画册网站推广品牌的策划方案
  • 广西桂川建设集团网站关键词搜索量怎么查
  • 北辰做网站八种营销模式
  • 网站建设流程效果教你免费申请个人网站
  • 网站免费推广100种方法南宁网站快速排名提升
  • 黑龙江网站建设开发简述网络营销的概念
  • 景县住房和城乡规划建设局网站推广的渠道和方法有哪些
  • 域名如何解析别人网站成都移动seo
  • 网站转跳怎么做域名申请
  • 国内餐饮类网站欣赏网络营销工具有哪些
  • 门户网站开发需求弹窗广告最多的网站
  • 哪个网站做ppt好职业技能培训网站
  • 做旅游网站怎么做呀竞价托管怎么做
  • 龙岗网站建设公司app开发流程
  • 做网站怎么云存储新手怎么做电商运营
  • 网站建设费计入什么费用青岛网络优化费用
  • 昆山网站公司百度电脑版登录网站
  • 青岛疫情最新动态医疗网站优化公司
  • 大专计算机网络技术就业方向seo网站技术培训
  • 百度站长平台链接提交查询网站注册信息