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

新乐市做网站余姚关键词优化公司

新乐市做网站,余姚关键词优化公司,图表设计 网站,做广告的软件app免费目录 题目描述 解题思路 代码分析 步骤说明 图解原理 优势分析 小结 码题目: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/170717.html

相关文章:

  • 云南网站建设的价值电商推广平台有哪些
  • 顺德销售型网站建设现在网络推广哪家好
  • 营销型网站策划设计深圳外贸网络推广
  • 企业查询官方网站网络营销成功案例分析
  • 公司做个网站多少钱推广网站公司
  • 被黑网站查询青岛网站制作
  • 关于加强机关网站建设出售网站平台
  • wordpress网站做成app6淘宝店铺买卖交易平台
  • 福建巢网站建设淘宝关键词指数
  • 网站中数据查询如何做网络营销的培训课程
  • 买服务器做网站哪里能搜索引擎优化
  • 基于phpmysql的网站开发民宿平台搜索量上涨
  • 网上那个网站做席子批发西安关键词seo公司
  • 黄梅那里有做网站的关键字是什么意思
  • 简洁网站倒计时代码北京seo优化方案
  • 网站制作全过程百度竞价推广价格
  • 安卓手机app开发工具软件武汉seo推广
  • 植物提取网站做的比较好的厂家成都竞价托管多少钱
  • 黄山网站建设怎么做新网站百度收录
  • 商贸有限公司网站建设网络推广员为什么做不长
  • 做二手物资哪个网站好郴州seo
  • 网站交互方式西安seo服务公司
  • 杭州做网站模板搜索引擎推广成功的案例
  • 济南网站建设需要多少钱北京seo优化外包
  • 厦门网站制作公司抖音seo搜索优化
  • 淮安企业网站网络事件营销
  • 微信分销网站建设哪家好百度河南代理商
  • wap网站 手机网站自制网页
  • 学校介绍网站模板写软文推广
  • 苏州注册公司代办免费seo推广计划