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

可视化图解算法65:有效的字母异位词

1.题目

描述

给定两个字符串 st ,编写一个函数来判断 t 是否是 s 的字母异位词。

字母异位词 是通过重新排列不同单词或短语的字母而形成的单词或短语,通常只使用所有原始字母一次。

示例 1:

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

示例 2:

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

提示:

  • 1 <= s.length, t.length <= 5 * 104
  • st 仅包含小写字母

2. 题解思路

对于字母异位词 来说,字符串s中出现的字符在字符串t中都需要出现,不能多也不能少。因此可以通过一个map来实现,具体思路是:

  1. 定义一个哈希表(map);key为字符,value为字符出现的次数(默认值为0);

  2. 遍历字符串s,哈希表中存储的是s对应字符出现的次数;

  3. 遍历字符串t,字符每出现一次,在哈希表中将值减1;

  4. 遍历哈希表,如果哈希表中对应字符的值都为0,则s与t为有效的字母异位词。

如果文字描述的不太清楚,你可以参考视频的详细讲解。

  • Python版本:https://www.bilibili.com/cheese/play/ep1374984
  • Java版本:https://www.bilibili.com/cheese/play/ep1368274
  • Golang版本:https://www.bilibili.com/cheese/play/ep1368658

3.编码实现

核心代码如下:

func isAnagram(s string, t string) bool {//1.定义一个哈希表(map);key为字符,value为字符出现的次数(默认值为0)hashTable := make(map[uint8]int)//2.遍历字符串s,哈希表中存储的是s对应字符出现的次数;对于map来说,key不存在,value默认为零值(int:0,string:空)for i := 0; i < len(s); i++ {hashTable[s[i]]++}//3.遍历字符串t,字符每出现一次,在哈希表中将值减1for j := 0; j < len(t); j++ {hashTable[t[j]]--}//4.遍历哈希表,如果哈希表中对应字符的值都为0,则s与t为有效的字母异位词for _, v := range hashTable {if v != 0 {return false}}return true
}

具体完整代码你可以参考下面视频的详细讲解。

  • Python版本:https://www.bilibili.com/cheese/play/ep1374984
  • Java版本:https://www.bilibili.com/cheese/play/ep1368274
  • Golang版本:https://www.bilibili.com/cheese/play/ep1368658

4.总结

本题的关键是理解题目的含义(字母异位词),并想到通过哈希表(map)来解答问题。

分割线

《数据结构与算法》深度精讲课程正式上线啦!七大核心算法模块全解析:

  ✅   链表

  ✅   二叉树

  ✅   二分查找、排序

  ✅   堆、栈、队列

  ✅   回溯算法

  ✅   哈希算法

  ✅   动态规划

无论你是备战笔试面试、提升代码效率,还是突破技术瓶颈,这套课程都将为你构建扎实的算法思维底座。🔥立即加入学习打卡,与千名开发者共同进阶!

  • Python编码实现:https://www.bilibili.com/cheese/play/ss897667807
  • Java编码实现:https://www.bilibili.com/cheese/play/ss161443488
  • Golang编码实现:https://www.bilibili.com/cheese/play/ss63997

对于LeetCode数据结构与算法,我们总结了一套【可视化+图解】方法,依据此方法来解决相关问题,算法变得易于理解,写出来的代码可读性高也不容易出错。具体也可以参考视频详细讲解。

今日佳句:燕赵多佳人,美者颜如玉。

http://www.rkmt.cn/news/28392.html

相关文章:

  • 2025 年传感器厂家最新推荐排行榜:磁致伸缩 / 防爆 / 防水 / 隔爆 / 线性等类型传感器企业实力与产品优势解析
  • 2025 年加热线圈厂家最新推荐排行榜:聚焦行业头部企业,深度解析优质品牌核心优势与选购价值轴承外感应加热线圈 / 轴承座内圈加热线圈 / 感应加热线圈公司推荐
  • 互动问答直播版双端小程序管理系统:开启直播变现新蓝海
  • 水贝培育钻项链生产厂家口碑榜:基于专业测评的技术、工艺及市场优势深度分析
  • IIc死锁的问题
  • 2025 年最新推荐!变电站架构厂家榜单发布,全方位解析户外 / 户内 / GIS / 常规 / 智能型架构优质企业实力
  • 2025 年电感源头厂家最新推荐榜单:功率 / 一体成型 / 屏蔽 / 共模等多系列电感优质制造商全方位解析
  • 2025 智能/商超照明/灯具/灯光/源头厂家推荐榜:上海富明阳 5 星领跑,这些优质灯具成商超新选
  • 2025 年化粪池生产厂家最新推荐排行榜:预制 / 水泥 / 玻璃钢等多类型优质厂商权威甄选
  • Python 2025:云原生与容器化技巧的新浪潮
  • SDE表空间过大分析(STATES,STATE_LINEAGES表过大)
  • 卓越SAP实施,铸就企业数字核心——哲讯科技,您值得信赖的数字化转型伙伴
  • 增强AI股票预测分析报告 - 2025年10月23日
  • CXF WebService No operation was found with the name
  • 国产“小螺纹”——HL-SMA-KHD 实测记录
  • 2025年耐用的木工除尘设备厂家最新推荐榜
  • AI 重构实体经济:2025 传统产业转型的实践与启示 - 指南
  • 完整教程:pdf转图片:pdf2image
  • 2025年优质的高抗干扰测力称重工业型导轨式推荐TOP品牌企业
  • 实现一个纯血鸿蒙版(HarmonyOS)的聊天Demo,并可与其它PC、手机端互通!
  • 2025年知名的螺旋丝杆升降机厂家推荐及采购指南
  • 2025 年门窗填缝砂浆厂家最新推荐榜:精选行业优质公司,适配多场景需求的高口碑品牌合集快干高抗渗防水型/微膨胀/防水抗裂门窗填缝水泥砂浆公司推荐
  • 2025年专业的不锈钢气动阀,不锈钢风量调节阀品牌厂家排行榜
  • 2025年口碑好的直膨式净化空调机组,直膨式空气净化空调机组TOP厂家推荐
  • 2025年10月国内海外跨境电商公司全景解析报告,基于专业测评的技术、性能及市场优势深度分析
  • 设计模式2-结构型模式
  • 设计模式1-创建型模式
  • RFSOC学习记录(一)RF data converter总览
  • git ssh 已配置公钥,但仍然报错: Permission denied (publickey) - lay
  • 2025 年最新外呼系统厂家最新推荐排行榜:深度解析技术实力、服务体系及行业适配方案解决方案 / 电话营销 / 智能 / 电销卡 / 平台搭建 / 电销卡 / 线路公司推荐