代码随想录算法练习Day13:有效的字母异位词

题目:

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

注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。

题目链接:242.有效的字母异位词

卡哥的视频讲解:学透哈希表,数组使用有技巧!Leetcode:242.有效的字母异位词

题目思路:异位词也就是判断两个字符串中所含的元素是否相同,位置不同也没关系,定义一个数组,因为题目中给出的字符只有小写字母,把字符映射到哈希表的索引下标上,遍历第一个字符串的时候,把出现的字符索引加一,再遍历第二个字符串,把遇见的字符减一,如果这个数组的所有元素都是零的话,就说明两个字符串是字母异位词。

步骤:

1.定义一个数组

2.遍历两个字符串

3.增强for循环语句用来比较

代码示例:

代码逻辑:

  1. 首先,创建一个长度为 26 的整型数组 record,用于记录每个字母出现的次数,初始化为全零。
  2. 遍历字符串 s,对于每个字符,将对应位置的计数加 1。
  3. 遍历字符串 t,对于每个字符,将对应位置的计数减 1。
  4. 最后,遍历 record 数组,如果有任何一个计数不为 0,说明两个字符串不是字母异位词,返回 false;否则返回 true

这个算法的时间复杂度是 O(n),其中 n 是字符串的长度,因为需要遍历两个字符串。整体的空间复杂度为 O(1),因为使用了一个固定长度的数组。

注意!别忘了charAt方法和求长度的括号噢

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

kali工具----网络映射器(Network Mapper)系统指纹

系统指纹识别 现在一些便携式计算机操作系统使用指纹识别来验证密码进行登录。指纹识别是识别系统的一个典型模式,包括指纹图像获取、处理、特征提取和对等模块。如果要做渗透测试,需要了解要渗透测试的操作系统的类型才可以。本节将介绍使用Nmap工具测试…

小米温度计接入HA后,手机米家app里温度计就看不到温度数值了

环境: 小米温度计 HA OS Core 2023.12.1 Supervisor 2024.04.0 Operating System 11.1 问题描述: 小米温度计接入HA后,手机米家app里和HA里面温度计就看不到温度数值了 解决方案: 1.前往米家APP,解绑温度计和本地…

都2024年了,线上部署你不会只会log 调试吧,Arthas了解下!

文章目录 一、什么是Arthas?⛅背景⚡Arthas能为我们做什么 二、部署Arthas三、Arthas 基础命令四、Arthas 项目命令实战⌚thread 线程阻塞⏰watch命令演示⚡cpu飙升演示⛽方法演示 🚨小结 一、什么是Arthas? Arthas 是一款线上监控诊断产品&a…

264:vue+openlayers 坐标转换 WGS84-GCJ02-BD09

第264个 点击查看专栏目录 本示例演示如何在vue+openlayers中将 WGS84坐标转化为GCJ02坐标,然后再转换为BD09坐标,本示例中使用的是高德地图,所以转换来的GCJ02坐标是正确的位置。 84坐标系可以理解为是真实坐标系,是一个地点的实际坐标值。02坐标系是加密后的坐标系,是为…

[通俗易懂:Linux标准输入/输出和重定向]Shell脚本之 > /dev/null 2>1命令详解

目录标题 一、> /dev/null 2>&1 命令解析二、/dev/null 文件浅显理解三、标准输入、标准输出、标准错误输出四、输入重定向、输出重定向五、命令作用与应用场景 如果想看命令意义,可以直接跳到第五部分 一、> /dev/null 2>&1 命令解析 我们在别…

【Python深度学习系列】网格搜索选择神经网络超参数:隐含层神经元数量(案例+源码)

这是我的第259篇原创文章。 一、引言 在深度学习中,超参数是指在训练模型时需要手动设置的参数,它们通常不能通过训练数据自动学习得到。超参数的选择对于模型的性能至关重要,因此在进行深度学习实验时,超参数调优通常是一个重要的…

探索 SAM 在遥感方面的能力

分割任意模型 (SAM) 现在可在不同类型的数据(例如近距离图像和航空图像)中自由克隆和使用。在我看来,SAM 模型在近距离图像上效果更好,因为这些图像对目标特征和物体有独特的视角,使模型更容易准确地区分和分割它们。 现在,我们将探讨 SAM 模型在不同遥感数据上的能力,包…

软考128-上午题-【软件工程】-白盒测试

一、白盒测试(结构测试) 白盒测试也称为结构测试,根据程序的内部结构和逻辑来设计测试用例,对程序的路径和过程进行测试,检查是否满足设计的需要。 白盒测试常用的技术是:逻辑覆盖、循环覆盖和基本路径测…

Web前端 JavaScript笔记4

1、元素内容 属性名称说明元素名.innerText输出一个字符串,设置或返回元素中的内容,不识别html标签元素名.innerHTML输出一个字符串,设置或返回元素中的内容,识别html标签元素名.textContent设置或返回指定节点的文本内容&#x…

LeetCode 678——有效的括号字符串

阅读目录 1. 题目2. 解题思路3. 代码实现 1. 题目 2. 解题思路 需要两个栈,一个用来保存左括号所在的位置索引,一个用来保存星号所在的位置索引。 从左往右遍历字符串,如果是左括号或者星号,则将位置索引分别入栈,如…

linux shell脚本编写(2)

Shell: 命令转换器,高级语言转换成二进制语言。是Linux的一个外壳,它包在Lniux内核的外面,用户和内核之间的交互提供了一个接口。 内置命令:在shell内部不需要shell编辑 外置命令:高级语言要用shell转换成二进制语言 …

机器学习 | 使用Scikit-Learn实现分层抽样

在本文中,我们将学习如何使用Scikit-Learn实现分层抽样。 什么是分层抽样? 分层抽样是一种抽样方法,首先将总体的单位按某种特征分为若干次级总体(层),然后再从每一层内进行单纯随机抽样,组成…

Kubernetes的Ingress Controller

前言 Kubernetes暴露服务的方式有一下几种:LoadBlancer Service、ExternalName、NodePort Service、Ingress,使用四层负载均衡调度器Service时,当客户端访问kubernetes集群内部的应用时,数据包的走向如下面流程所示:C…

计算机三级数据库技术备考笔记(十四)

第十四章 数据仓库与数据挖掘 决策支持系统的发展 决策支持系统及其演化 操作型数据(Operalional Data)是指由企业的基本业务系统所产生的数据,操作型数据及相应数据处理所处的环境,即用于支持企业基本业务应用的环境,一般被称为联机事务处理(0nLine Transaction Processing,0…

COMSOL多孔介质流仿真

使用Comsol进行多孔介质流仿真_哔哩哔哩_bilibili 目录 多孔介质 饱和多孔介质中的流动 达西定律 Brinkman方程:用于过渡区 裂隙流 变饱和多孔介质流 理查兹方程 多孔介质多相流 多物理场耦合 多孔介质中的传热 多孔弹性接口 多孔介质稀物质传递 多孔介质…

c# 无处不在的二分搜索

我们知道二分查找算法。二分查找是最容易正确的算法。我提出了一些我在二分搜索中收集的有趣问题。有一些关于二分搜索的请求。我请求您遵守准则:“我真诚地尝试解决问题并确保不存在极端情况”。阅读完每个问题后,最小化浏览器并尝试解决它。 …

NSL-KDD数据集详细介绍及下载

链接:https://pan.baidu.com/s/1hX4xpVPo70vwLIo0gdsM8A?pwdq88b 提取码:q88b 一般认为数据质量决定了机器学习性能的上限,而机器学习模型和算法的优化最多 只能逼近这个上限。因此在数据采集阶段需要对采集任务进行规划。在数据采集之前, 主要是从数据…

第十二讲 查询计划 优化

到目前为止,我们一直在说,我们得到一个 SQL 查询,我们希望可以解析它,将其转化为某种逻辑计划,然后生成我们可以用于执行的物理计划。而这正是查询优化器【Optimizer】的功能,对于给定的 SQL ,优…

.net框架和c#程序设计第三次测试

目录 一、测试要求 二、实现效果 三、实现代码 一、测试要求 二、实现效果 数据库中的内容&#xff1a; 使用数据库中的账号登录&#xff1a; 若不是数据库中的内容&#xff1a; 三、实现代码 login.aspx文件&#xff1a; <% Page Language"C#" AutoEventW…

DB schema表中使用全局变量及在DB组件中查询

DB schema表中使用全局变量及在DB组件中查询 规则如下&#xff1a; 使用如下&#xff1a; 如果在unicloud-db组件上不加判断条件&#xff0c;就会报错&#xff0c;并进入到登录页。 那么就会进入到登录页&#xff0c;加上了判断条件&#xff0c;有数据了就不会了。 因为在sc…